initial commit of file from CVS for smeserver-zabbix-proxy on Sat Sep 7 21:18:29 AEST 2024
This commit is contained in:
parent
58fbe68965
commit
8d98403b11
4
.gitignore
vendored
Normal file
4
.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
*.rpm
|
||||||
|
*.log
|
||||||
|
*spec-20*
|
||||||
|
*.tar.gz
|
21
Makefile
Normal file
21
Makefile
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# Makefile for source rpm: smeserver-zabbix-proxy
|
||||||
|
# $Id: Makefile,v 1.1 2022/08/01 18:51:07 jpp Exp $
|
||||||
|
NAME := smeserver-zabbix-proxy
|
||||||
|
SPECFILE = $(firstword $(wildcard *.spec))
|
||||||
|
|
||||||
|
define find-makefile-common
|
||||||
|
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||||
|
endef
|
||||||
|
|
||||||
|
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||||
|
|
||||||
|
ifeq ($(MAKEFILE_COMMON),)
|
||||||
|
# attept a checkout
|
||||||
|
define checkout-makefile-common
|
||||||
|
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||||
|
endef
|
||||||
|
|
||||||
|
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||||
|
endif
|
||||||
|
|
||||||
|
include $(MAKEFILE_COMMON)
|
17
README.md
17
README.md
@ -1,3 +1,16 @@
|
|||||||
# smeserver-zabbix-proxy
|
# <img src="https://www.koozali.org/images/koozali/Logo/Png/Koozali_logo_2016.png" width="25%" vertical="auto" style="vertical-align:bottom"> smeserver-zabbix-proxy
|
||||||
|
|
||||||
SMEServer Koozali developed git repo for smeserver-zabbix-proxy smecontribs
|
SMEServer Koozali developed git repo for smeserver-zabbix-proxy smecontribs
|
||||||
|
|
||||||
|
## Wiki
|
||||||
|
<br />https://wiki.koozali.org/Zabbix-proxy
|
||||||
|
<br />https://wiki.koozali.org/Zabbix-proxy/fr
|
||||||
|
|
||||||
|
## Bugzilla
|
||||||
|
Show list of outstanding bugs: [here](https://bugs.koozali.org/buglist.cgi?component=smeserver-zabbix-proxy&product=SME%20Contribs&query_format=advanced&limit=0&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=CONFIRMED)
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
<br />*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.*
|
||||||
|
*Once it has been checked, then this comment will be deleted*
|
||||||
|
<br />
|
||||||
|
3
additional/.tito/packages/.readme
Normal file
3
additional/.tito/packages/.readme
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
the .tito/packages directory contains metadata files
|
||||||
|
named after their packages. Each file has the latest tagged
|
||||||
|
version and the project's relative directory.
|
1
additional/.tito/packages/smeserver-zabbix-proxy
Normal file
1
additional/.tito/packages/smeserver-zabbix-proxy
Normal file
@ -0,0 +1 @@
|
|||||||
|
0.3.1-1 ./
|
1
additional/.tito/releasers.conf
Symbolic link
1
additional/.tito/releasers.conf
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../../tito_libs/releasers.conf
|
6
additional/.tito/tito.props
Normal file
6
additional/.tito/tito.props
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[buildconfig]
|
||||||
|
builder = tito.builder.Builder
|
||||||
|
tagger = tito.tagger.VersionTagger
|
||||||
|
changelog_do_not_remove_cherrypick = 0
|
||||||
|
changelog_format = %s (%ae)
|
||||||
|
lib_dir = ../tito_libs
|
109
additional/smeserver-zabbix-proxy.spec
Normal file
109
additional/smeserver-zabbix-proxy.spec
Normal file
@ -0,0 +1,109 @@
|
|||||||
|
Summary: sme server integration of zabbix proxy
|
||||||
|
Name: smeserver-zabbix-proxy
|
||||||
|
Version: 0.3.1
|
||||||
|
Release: 1%{?dist}
|
||||||
|
License: GNU GPL version 3
|
||||||
|
URL: http://www.zabbix.com/
|
||||||
|
Group: SMEserver/addon
|
||||||
|
Source: %{name}-%{version}.tar.gz
|
||||||
|
|
||||||
|
BuildArchitectures: noarch
|
||||||
|
BuildRequires: e-smith-devtools
|
||||||
|
BuildRoot: /var/tmp/%{name}-%{version}
|
||||||
|
Requires: e-smith-release >= 7.0
|
||||||
|
Requires: fping
|
||||||
|
Requires: zabbix-proxy-mysql
|
||||||
|
Requires: smeserver-remoteuseraccess
|
||||||
|
Conflicts: smeserver-zabbix-server
|
||||||
|
Obsoletes: zabbix-server
|
||||||
|
Obsoletes: zabbix-server-mysql
|
||||||
|
AutoReqProv: no
|
||||||
|
|
||||||
|
%description
|
||||||
|
smserver integration of zabbix proxy
|
||||||
|
Zabbix is an entreprise-class open source distributed monitoring
|
||||||
|
solution
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Thu Nov 28 2019 Daniel Berteaud <daniel@firewall-services.com> 0.3.1-1
|
||||||
|
- new package built with tito
|
||||||
|
- adapt spec file for tito
|
||||||
|
- adapt to be used with upstream zabbix packages
|
||||||
|
* Mon Mar 21 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.3.0-1.sme
|
||||||
|
- Add support for encryption features of Zabbix 3.0
|
||||||
|
|
||||||
|
* Wed Jun 5 2013 Daniel B. <daniel@firewall-services.com> 0.2.2-1.sme
|
||||||
|
- Don't try to upgrade the database
|
||||||
|
|
||||||
|
* Fri Apr 19 2013 Daniel B. <daniel@firewall-services.com> 0.2.1-1.sme
|
||||||
|
- Sync config every 10 minutes
|
||||||
|
|
||||||
|
* Thu Jun 14 2012 Daniel B. <daniel@firewall-services.com> 0.2.0-1.sme
|
||||||
|
- Import to GIT
|
||||||
|
- Only import the schema when creating the database
|
||||||
|
|
||||||
|
* Fri Oct 07 2011 Daniel B. <daniel@firewall-services.com> 0.1-11
|
||||||
|
- Fixe 2 directives (needed for Zabbix 1.8.8)
|
||||||
|
|
||||||
|
* Thu Nov 25 2010 Daniel B. <daniel@firewall-services.com> 0.1-9
|
||||||
|
- Requires the mysql variant of server and proxy
|
||||||
|
|
||||||
|
* Tue Oct 19 2010 Daniel B. <daniel@firewall-services.com> 0.1-8
|
||||||
|
- Possibility to set Hostname from the DB
|
||||||
|
|
||||||
|
* Thu Apr 15 2010 Daniel B. <daniel@firewall-services.com> 0.1-7
|
||||||
|
- Support multiple dbpatches
|
||||||
|
|
||||||
|
* Mon Sep 28 2009 Daniel B. <daniel@firewall-services.com> 0.1-6
|
||||||
|
- Fixe /etc/sudoers template expension during zabbix-proxy-update event
|
||||||
|
|
||||||
|
* Tue Mar 03 2009 Daniel B. <daniel@firewall-services.com> 0.1-5
|
||||||
|
- Add smeserver-remoteuseraccess as a dependencie (sudoers template problem)
|
||||||
|
|
||||||
|
* Mon Mar 02 2009 Daniel B. <daniel@firewall-services.com> 0.1-4
|
||||||
|
- Disable DB cache as it seems to cause IPC problems
|
||||||
|
|
||||||
|
* Mon Mar 02 2009 Daniel B. <daniel@firewall-services.com> 0.1-3
|
||||||
|
- enable DB cache with StartDBSyncers directive
|
||||||
|
|
||||||
|
* Sun Mar 01 2009 Daniel B. <daniel@firewall-services.com> 0.1-2
|
||||||
|
- Fix permissions on /var/lib/zabbix/tmp
|
||||||
|
|
||||||
|
* Tue Feb 24 2009 Daniel B. <daniel@firewall-services.com> 0.1-1
|
||||||
|
- Fix createlinks
|
||||||
|
|
||||||
|
* Tue Feb 24 2009 Daniel B. <daniel@firewall-services.com> 0.1-0
|
||||||
|
- initial release
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup
|
||||||
|
|
||||||
|
%build
|
||||||
|
perl ./createlinks
|
||||||
|
%{__mkdir_p} root/var/lib/zabbix/tmp
|
||||||
|
|
||||||
|
%install
|
||||||
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT)
|
||||||
|
rm -f %{name}-%{version}-filelist
|
||||||
|
/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \
|
||||||
|
--file /var/lib/zabbix/bin/fping 'attr(0750,root,zabbix)' \
|
||||||
|
--file /var/lib/zabbix/bin/fping6 'attr(0750,root,zabbix)' \
|
||||||
|
--dir /var/lib/zabbix/tmp 'attr(0755,zabbix,zabbix)' \
|
||||||
|
> %{name}-%{version}-filelist
|
||||||
|
|
||||||
|
%files -f %{name}-%{version}-filelist
|
||||||
|
%defattr(-,root,root)
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
|
|
||||||
|
%postun
|
||||||
|
#uninstall
|
||||||
|
if [ $1 = 0 ] ; then
|
||||||
|
/sbin/e-smith/db configuration setprop zabbix-proxy status disabled
|
||||||
|
/etc/init.d/zabbix-proxy stop
|
||||||
|
fi
|
||||||
|
|
||||||
|
true
|
1
contriborbase
Normal file
1
contriborbase
Normal file
@ -0,0 +1 @@
|
|||||||
|
contribs10
|
19
createlinks
Normal file
19
createlinks
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
|
use esmith::Build::CreateLinks qw(:all);
|
||||||
|
|
||||||
|
|
||||||
|
# Templates to expand
|
||||||
|
templates2events("/etc/zabbix/zabbix_proxy.conf", qw(zabbix-proxy-update bootstrap-console-save));
|
||||||
|
templates2events("/etc/sudoers", "zabbix-proxy-update");
|
||||||
|
templates2events("/etc/e-smith/sql/init/80zabbix-proxy", qw(zabbix-proxy-update bootstrap-console-save));
|
||||||
|
|
||||||
|
# Services to restart
|
||||||
|
safe_symlink("restart", "root/etc/e-smith/events/zabbix-proxy-update/services2adjust/mysql.init");
|
||||||
|
safe_symlink("restart", "root/etc/e-smith/events/zabbix-proxy-update/services2adjust/zabbix-proxy");
|
||||||
|
|
||||||
|
# Start and stop links
|
||||||
|
service_link_enhanced("zabbix-proxy", "S99", "7");
|
||||||
|
service_link_enhanced("zabbix-proxy", "K10", "6");
|
||||||
|
service_link_enhanced("zabbix-proxy", "K10", "0");
|
||||||
|
|
@ -0,0 +1 @@
|
|||||||
|
zabbixproxydb
|
@ -0,0 +1 @@
|
|||||||
|
zabbixuser
|
@ -0,0 +1 @@
|
|||||||
|
10051
|
@ -0,0 +1 @@
|
|||||||
|
private
|
@ -0,0 +1 @@
|
|||||||
|
enabled
|
@ -0,0 +1 @@
|
|||||||
|
service
|
@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
my $rec = $DB->get('zabbix-proxy')
|
||||||
|
|| $DB->new_record('zabbix-proxy', {type => 'service'});
|
||||||
|
my $pw = $rec->prop('DbPassword');
|
||||||
|
if (not $pw or length($pw) < 57)
|
||||||
|
{
|
||||||
|
use MIME::Base64 qw(encode_base64);
|
||||||
|
|
||||||
|
$pw = "not set due to error";
|
||||||
|
if ( open( RANDOM, "/dev/urandom" ) )
|
||||||
|
{
|
||||||
|
my $buf;
|
||||||
|
# 57 bytes is a full line of Base64 coding, and contains
|
||||||
|
# 456 bits of randomness - given a perfectly random /dev/random
|
||||||
|
if ( read( RANDOM, $buf, 57 ) != 57 )
|
||||||
|
{
|
||||||
|
warn("Short read from /dev/random: $!");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$pw = encode_base64($buf);
|
||||||
|
chomp $pw;
|
||||||
|
}
|
||||||
|
close RANDOM;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
warn "Could not open /dev/urandom: $!";
|
||||||
|
}
|
||||||
|
$rec->set_prop('DbPassword', $pw);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
|||||||
|
PERMS=0750
|
@ -0,0 +1,3 @@
|
|||||||
|
PERMS=0750
|
||||||
|
UID="root"
|
||||||
|
GID="zabbix"
|
@ -0,0 +1,48 @@
|
|||||||
|
{
|
||||||
|
my $db = ${'zabbix-proxy'}{'DbName'} || 'zabbix';
|
||||||
|
my $user = ${'zabbix-proxy'}{'DbUser'} || 'zabbix';
|
||||||
|
my $pass = ${'zabbix-proxy'}{'DbPassword'} || 'secret';
|
||||||
|
|
||||||
|
my $schema = `rpm -qd zabbix-proxy-mysql | grep schema | grep mysql`;
|
||||||
|
|
||||||
|
|
||||||
|
$OUT .= <<"END";
|
||||||
|
#! /bin/sh
|
||||||
|
if [ \! -d /var/lib/mysql/$db ]; then
|
||||||
|
/usr/bin/mysqladmin create $db
|
||||||
|
gzip -dc $schema | /usr/bin/mysql $db
|
||||||
|
fi
|
||||||
|
|
||||||
|
/usr/bin/mysql <<EOF
|
||||||
|
USE mysql;
|
||||||
|
|
||||||
|
REPLACE INTO user (
|
||||||
|
host,
|
||||||
|
user,
|
||||||
|
password)
|
||||||
|
VALUES (
|
||||||
|
'localhost',
|
||||||
|
'${'zabbix-proxy'}{DbUser}',
|
||||||
|
PASSWORD ('${'zabbix-proxy'}{DbPassword}'));
|
||||||
|
|
||||||
|
|
||||||
|
REPLACE INTO db (
|
||||||
|
host,
|
||||||
|
db,
|
||||||
|
user,
|
||||||
|
select_priv, insert_priv, update_priv, delete_priv,
|
||||||
|
create_priv, alter_priv, index_priv, drop_priv, create_tmp_table_priv,
|
||||||
|
grant_priv, lock_tables_priv, references_priv)
|
||||||
|
VALUES (
|
||||||
|
'localhost',
|
||||||
|
'${'zabbix-proxy'}{DbName}',
|
||||||
|
'${'zabbix-proxy'}{DbUser}',
|
||||||
|
'Y', 'Y', 'Y', 'Y',
|
||||||
|
'Y', 'Y', 'Y', 'Y', 'Y',
|
||||||
|
'N', 'Y', 'Y');
|
||||||
|
|
||||||
|
FLUSH PRIVILEGES;
|
||||||
|
|
||||||
|
EOF
|
||||||
|
END
|
||||||
|
}
|
1
root/etc/e-smith/templates/etc/sudoers/00zabbixAlias
Normal file
1
root/etc/e-smith/templates/etc/sudoers/00zabbixAlias
Normal file
@ -0,0 +1 @@
|
|||||||
|
Cmnd_Alias ZABBIX = /usr/sbin/fping,/usr/sbin/fping6
|
1
root/etc/e-smith/templates/etc/sudoers/30zabbix
Normal file
1
root/etc/e-smith/templates/etc/sudoers/30zabbix
Normal file
@ -0,0 +1 @@
|
|||||||
|
zabbix ALL=(root) NOPASSWD: ZABBIX
|
@ -0,0 +1,4 @@
|
|||||||
|
# This is config file for ZABBIX server process
|
||||||
|
# To get more information about ZABBIX,
|
||||||
|
# go http://www.zabbix.com
|
||||||
|
|
@ -0,0 +1,10 @@
|
|||||||
|
############ GENERAL PARAMETERS #################
|
||||||
|
|
||||||
|
# IP address (or hostname) of ZABBIX servers.
|
||||||
|
|
||||||
|
Server={ (${'zabbix-proxy'}{'Servers'} || '127.0.0.1'); }
|
||||||
|
|
||||||
|
# Server port for sending active checks
|
||||||
|
|
||||||
|
ServerPort={ (${'zabbix-proxy'}{'ServerPort'} || '10051'); }
|
||||||
|
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
|
||||||
|
my $host = (${'zabbix-proxy'}{'Hostname'} || $SystemName.".".$DomainName);
|
||||||
|
$OUT = "Hostname=$host\n";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,35 @@
|
|||||||
|
# Number of pre-forked instances of pollers
|
||||||
|
# Default value is 5
|
||||||
|
# This parameter must be between 0 and 255
|
||||||
|
StartPollers=5
|
||||||
|
|
||||||
|
# Number of pre-forked instances of IPMI pollers
|
||||||
|
# Default value is 0
|
||||||
|
# This parameter must be between 0 and 255
|
||||||
|
#StartIPMIPollers=0
|
||||||
|
|
||||||
|
# Number of pre-forked instances of pollers for unreachable hosts
|
||||||
|
# Default value is 1
|
||||||
|
# This parameter must be between 0 and 255
|
||||||
|
#StartPollersUnreachable=1
|
||||||
|
|
||||||
|
# Number of pre-forked instances of trappers
|
||||||
|
# Default value is 5
|
||||||
|
# This parameter must be between 0 and 255
|
||||||
|
StartTrappers=5
|
||||||
|
|
||||||
|
# Number of pre-forked instances of ICMP pingers
|
||||||
|
# Default value is 1
|
||||||
|
# This parameter must be between 0 and 255
|
||||||
|
StartPingers=1
|
||||||
|
|
||||||
|
# Number of pre-forked instances of discoverers
|
||||||
|
# Default value is 1
|
||||||
|
# This parameter must be between 0 and 255
|
||||||
|
StartDiscoverers=1
|
||||||
|
|
||||||
|
# Number of pre-forked instances of HTTP pollers
|
||||||
|
# Default value is 1
|
||||||
|
# This parameter must be between 0 and 255
|
||||||
|
#StartHTTPPollers=1
|
||||||
|
|
@ -0,0 +1,16 @@
|
|||||||
|
# Listen port for trapper. Default port number is 10051. This parameter
|
||||||
|
# must be between 1024 and 32767
|
||||||
|
{
|
||||||
|
my $port = ${'zabbix-proxy'}{'TCPPort'} || '10051';
|
||||||
|
$OUT .= "ListenPort=$port\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Source IP address for outgouing connections
|
||||||
|
#SourceIP=
|
||||||
|
|
||||||
|
# Listen interface for trapper. Trapper will listen all network interfaces
|
||||||
|
# if this parameter is missing.
|
||||||
|
|
||||||
|
#ListenIP=127.0.0.1
|
||||||
|
|
||||||
|
|
@ -0,0 +1,34 @@
|
|||||||
|
# How often ZABBIX will perform sending hearbeat message
|
||||||
|
# (in seconds)
|
||||||
|
# Default value is 60 seconds
|
||||||
|
# Set to 0 to disable heartbeat messages
|
||||||
|
# This parameter must be between 0 and 3600
|
||||||
|
#HeartbeatFrequency=60
|
||||||
|
|
||||||
|
# How often ZABBIX will perform sync configuration data
|
||||||
|
# (in seconds)
|
||||||
|
# Default value is 3600 seconds (1h)
|
||||||
|
# This parameter must be between 1 and 604800 (1 week)
|
||||||
|
ConfigFrequency=600
|
||||||
|
|
||||||
|
|
||||||
|
# How often ZABBIX will perform housekeeping procedure
|
||||||
|
# (in hours)
|
||||||
|
# Default value is 1 hour
|
||||||
|
# Housekeeping is removing unnecessary information from
|
||||||
|
# tables history, alert, and alarms
|
||||||
|
# This parameter must be between 1 and 24
|
||||||
|
|
||||||
|
#HousekeepingFrequency=1
|
||||||
|
|
||||||
|
# How often ZABBIX will try to send unsent alerts
|
||||||
|
# (in seconds)
|
||||||
|
# Default value is 30 seconds
|
||||||
|
DataSenderFrequency=30
|
||||||
|
|
||||||
|
# Uncomment this line to disable housekeeping procedure
|
||||||
|
#DisableHousekeeping=1
|
||||||
|
|
||||||
|
# Frequency of ICMP pings (item keys 'icmpping' and 'icmppingsec'). Defauls is 60 seconds.
|
||||||
|
#PingerFrequency=60
|
||||||
|
|
@ -0,0 +1,9 @@
|
|||||||
|
# Local bufer size in hours. Proxy will keep collected data N hours.
|
||||||
|
# Default value is 0 hours
|
||||||
|
#ProxyLocalBuffer=0
|
||||||
|
|
||||||
|
# Offline buffer size in hours. It is used when server is not available.
|
||||||
|
# Older data is removed.
|
||||||
|
# Default value is 1 hours
|
||||||
|
ProxyOfflineBuffer=24
|
||||||
|
|
@ -0,0 +1,9 @@
|
|||||||
|
# Specifies debug level
|
||||||
|
# 0 - debug is not created
|
||||||
|
# 1 - critical information
|
||||||
|
# 2 - error information
|
||||||
|
# 3 - warnings (default)
|
||||||
|
# 4 - for debugging (produces lots of information)
|
||||||
|
|
||||||
|
DebugLevel=3
|
||||||
|
|
@ -0,0 +1,17 @@
|
|||||||
|
# Specifies how long we wait for agent response (in sec)
|
||||||
|
# Must be between 1 and 30
|
||||||
|
Timeout=5
|
||||||
|
|
||||||
|
# Specifies how many seconds trapper may spend processing new data
|
||||||
|
# Must be between 1 and 30
|
||||||
|
#TrapperTimeout=5
|
||||||
|
|
||||||
|
# After how many seconds of unreachability treat a host as unavailable
|
||||||
|
#UnreachablePeriod=45
|
||||||
|
|
||||||
|
# How ofter check host for availability during the unreachability period
|
||||||
|
#UnavailableDelay=15
|
||||||
|
|
||||||
|
# How ofter check host for availability during the unavailability period
|
||||||
|
#UnavailableDelay=60
|
||||||
|
|
@ -0,0 +1,13 @@
|
|||||||
|
# Name of PID file
|
||||||
|
|
||||||
|
PidFile=/var/run/zabbix/zabbix_proxy.pid
|
||||||
|
|
||||||
|
# Name of log file
|
||||||
|
# If not set, syslog is used
|
||||||
|
|
||||||
|
LogFile=/var/log/zabbix/zabbix_proxy.log
|
||||||
|
|
||||||
|
# Maximum size of log file in MB. Set to 0 to disable automatic log rotation.
|
||||||
|
LogFileSize=10
|
||||||
|
|
||||||
|
|
@ -0,0 +1,14 @@
|
|||||||
|
# Location of external scripts
|
||||||
|
ExternalScripts=/var/lib/zabbix/bin
|
||||||
|
|
||||||
|
# Location of fping. Default is /usr/sbin/fping
|
||||||
|
# Make sure that fping binary has root permissions and SUID flag set
|
||||||
|
FpingLocation=/var/lib/zabbix/bin/fping
|
||||||
|
|
||||||
|
# Location of fping6. Default is /usr/sbin/fping6
|
||||||
|
# Make sure that fping binary has root permissions and SUID flag set
|
||||||
|
Fping6Location=/var/lib/zabbix/bin/fping6
|
||||||
|
|
||||||
|
# Temporary directory. Default is /tmp
|
||||||
|
TmpDir=/var/lib/zabbix/tmp
|
||||||
|
|
@ -0,0 +1,32 @@
|
|||||||
|
# Database host name
|
||||||
|
# Default is localhost
|
||||||
|
|
||||||
|
DBHost=localhost
|
||||||
|
|
||||||
|
# Database name
|
||||||
|
# SQLite3 note: path to database file must be provided. DBUser and DBPassword are ignored.
|
||||||
|
{
|
||||||
|
my $dbname = ${'zabbix-proxy'}{'DbName'} || 'zabbix';
|
||||||
|
my $dbuser = ${'zabbix-proxy'}{'DbUser'} || 'zabbix';
|
||||||
|
my $dbpass = ${'zabbix-proxy'}{'DbPassword'} || 'secret';
|
||||||
|
|
||||||
|
$OUT .=<<"HERE";
|
||||||
|
|
||||||
|
DBName=$dbname
|
||||||
|
|
||||||
|
# Database user
|
||||||
|
|
||||||
|
DBUser=$dbuser
|
||||||
|
|
||||||
|
# Database password
|
||||||
|
# Comment this line if no password used
|
||||||
|
|
||||||
|
DBPassword=$dbpass
|
||||||
|
HERE
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
# Connect to MySQL using Unix socket?
|
||||||
|
|
||||||
|
DBSocket=/var/lib/mysql/mysql.sock
|
||||||
|
|
@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
my @encryptions = ();
|
||||||
|
my $psk_file = ${'zabbix-proxy'}{'TLSPSKFile'} || '/etc/zabbix/zabbix_proxy.psk';
|
||||||
|
my $psk_id = ${'zabbix-proxy'}{'TLSPSKIdentity'} || $SystemName . '.' . $DomainName . '-proxy';
|
||||||
|
if (-s $psk_file){
|
||||||
|
push @encryptions, 'psk';
|
||||||
|
$OUT .=<<_EOF;
|
||||||
|
TLSPSKFile=$psk_file
|
||||||
|
TLSPSKIdentity=$psk_id
|
||||||
|
_EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
my $cert = ${'zabbix-proxy'}{'TLSCertFile'} || '/etc/zabbix/zabbix_proxy.crt';
|
||||||
|
my $key = ${'zabbix-proxy'}{'TLSKeyFile'} || '/etc/zabbix/zabbix_proxy.key';
|
||||||
|
my $ca = ${'zabbix-proxy'}{'TLSCAFile'} || '/etc/zabbix/zabbix_proxy.ca';
|
||||||
|
if (-s $cert && -s $key && -s $ca){
|
||||||
|
push @encryptions, 'cert';
|
||||||
|
$OUT .=<<_EOF;
|
||||||
|
TLSCertFile=$cert
|
||||||
|
TLSKeyFile=$key
|
||||||
|
TLSCAFile=$ca
|
||||||
|
_EOF
|
||||||
|
my $issuer = ${'zabbix-proxy'}{'TLSServerCertIssuer'} || '';
|
||||||
|
my $subject = ${'zabbix-proxy'}{'TLSServerCertSubject'} || '';
|
||||||
|
$OUT .= "TLSServerCertIssuer=$issuer\n" if ($issuer ne '');
|
||||||
|
$OUT .= "TLSServerCertSubject=$subject\n" if ($subject ne '');
|
||||||
|
}
|
||||||
|
my $encryptions = (scalar @encryptions > 0) ? join(',', @encryptions) : '';
|
||||||
|
$OUT .=<<_EOF if ($encryptions ne '');
|
||||||
|
TLSConnect=$encryptions
|
||||||
|
TLSAccept=$encryptions
|
||||||
|
_EOF
|
||||||
|
}
|
2
root/var/lib/zabbix/bin/fping
Normal file
2
root/var/lib/zabbix/bin/fping
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
exec /usr/bin/sudo /usr/sbin/fping "$@"
|
2
root/var/lib/zabbix/bin/fping6
Normal file
2
root/var/lib/zabbix/bin/fping6
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
exec /usr/bin/sudo /usr/sbin/fping6 "$@"
|
116
smeserver-zabbix-proxy.spec
Normal file
116
smeserver-zabbix-proxy.spec
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
Summary: sme server integration of zabbix proxy
|
||||||
|
Name: smeserver-zabbix-proxy
|
||||||
|
Version: 0.3.1
|
||||||
|
Release: 2%{?dist}
|
||||||
|
License: GNU GPL version 3
|
||||||
|
URL: http://www.zabbix.com/
|
||||||
|
Group: SMEserver/addon
|
||||||
|
Source: %{name}-%{version}.tar.xz
|
||||||
|
|
||||||
|
BuildArchitectures: noarch
|
||||||
|
BuildRequires: e-smith-devtools
|
||||||
|
BuildRoot: /var/tmp/%{name}-%{version}
|
||||||
|
Requires: e-smith-release >= 7.0
|
||||||
|
Requires: fping
|
||||||
|
Requires: zabbix-proxy-mysql
|
||||||
|
Requires: smeserver-remoteuseraccess
|
||||||
|
Conflicts: smeserver-zabbix-server
|
||||||
|
Obsoletes: zabbix-server
|
||||||
|
Obsoletes: zabbix-server-mysql
|
||||||
|
AutoReqProv: no
|
||||||
|
|
||||||
|
%description
|
||||||
|
smserver integration of zabbix proxy
|
||||||
|
Zabbix is an entreprise-class open source distributed monitoring
|
||||||
|
solution
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Sat Sep 07 2024 cvs2git.sh aka Brian Read <brianr@koozali.org> 0.3.1-2.sme
|
||||||
|
- Roll up patches and move to git repo [SME: 12338]
|
||||||
|
|
||||||
|
* Sat Sep 07 2024 BogusDateBot
|
||||||
|
- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday,
|
||||||
|
by assuming the date is correct and changing the weekday.
|
||||||
|
|
||||||
|
* Thu Nov 28 2019 Daniel Berteaud <daniel@firewall-services.com> 0.3.1-1
|
||||||
|
- new package built with tito
|
||||||
|
- adapt spec file for tito
|
||||||
|
- adapt to be used with upstream zabbix packages
|
||||||
|
* Mon Mar 21 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.3.0-1.sme
|
||||||
|
- Add support for encryption features of Zabbix 3.0
|
||||||
|
|
||||||
|
* Wed Jun 5 2013 Daniel B. <daniel@firewall-services.com> 0.2.2-1.sme
|
||||||
|
- Don't try to upgrade the database
|
||||||
|
|
||||||
|
* Fri Apr 19 2013 Daniel B. <daniel@firewall-services.com> 0.2.1-1.sme
|
||||||
|
- Sync config every 10 minutes
|
||||||
|
|
||||||
|
* Thu Jun 14 2012 Daniel B. <daniel@firewall-services.com> 0.2.0-1.sme
|
||||||
|
- Import to GIT
|
||||||
|
- Only import the schema when creating the database
|
||||||
|
|
||||||
|
* Fri Oct 07 2011 Daniel B. <daniel@firewall-services.com> 0.1-11
|
||||||
|
- Fixe 2 directives (needed for Zabbix 1.8.8)
|
||||||
|
|
||||||
|
* Thu Nov 25 2010 Daniel B. <daniel@firewall-services.com> 0.1-9
|
||||||
|
- Requires the mysql variant of server and proxy
|
||||||
|
|
||||||
|
* Tue Oct 19 2010 Daniel B. <daniel@firewall-services.com> 0.1-8
|
||||||
|
- Possibility to set Hostname from the DB
|
||||||
|
|
||||||
|
* Thu Apr 15 2010 Daniel B. <daniel@firewall-services.com> 0.1-7
|
||||||
|
- Support multiple dbpatches
|
||||||
|
|
||||||
|
* Mon Sep 28 2009 Daniel B. <daniel@firewall-services.com> 0.1-6
|
||||||
|
- Fixe /etc/sudoers template expension during zabbix-proxy-update event
|
||||||
|
|
||||||
|
* Tue Mar 03 2009 Daniel B. <daniel@firewall-services.com> 0.1-5
|
||||||
|
- Add smeserver-remoteuseraccess as a dependencie (sudoers template problem)
|
||||||
|
|
||||||
|
* Mon Mar 02 2009 Daniel B. <daniel@firewall-services.com> 0.1-4
|
||||||
|
- Disable DB cache as it seems to cause IPC problems
|
||||||
|
|
||||||
|
* Mon Mar 02 2009 Daniel B. <daniel@firewall-services.com> 0.1-3
|
||||||
|
- enable DB cache with StartDBSyncers directive
|
||||||
|
|
||||||
|
* Sun Mar 01 2009 Daniel B. <daniel@firewall-services.com> 0.1-2
|
||||||
|
- Fix permissions on /var/lib/zabbix/tmp
|
||||||
|
|
||||||
|
* Tue Feb 24 2009 Daniel B. <daniel@firewall-services.com> 0.1-1
|
||||||
|
- Fix createlinks
|
||||||
|
|
||||||
|
* Tue Feb 24 2009 Daniel B. <daniel@firewall-services.com> 0.1-0
|
||||||
|
- initial release
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup
|
||||||
|
|
||||||
|
%build
|
||||||
|
perl ./createlinks
|
||||||
|
%{__mkdir_p} root/var/lib/zabbix/tmp
|
||||||
|
|
||||||
|
%install
|
||||||
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT)
|
||||||
|
rm -f %{name}-%{version}-filelist
|
||||||
|
/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \
|
||||||
|
--file /var/lib/zabbix/bin/fping 'attr(0750,root,zabbix)' \
|
||||||
|
--file /var/lib/zabbix/bin/fping6 'attr(0750,root,zabbix)' \
|
||||||
|
--dir /var/lib/zabbix/tmp 'attr(0755,zabbix,zabbix)' \
|
||||||
|
> %{name}-%{version}-filelist
|
||||||
|
|
||||||
|
%files -f %{name}-%{version}-filelist
|
||||||
|
%defattr(-,root,root)
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
|
|
||||||
|
%postun
|
||||||
|
#uninstall
|
||||||
|
if [ $1 = 0 ] ; then
|
||||||
|
/sbin/e-smith/db configuration setprop zabbix-proxy status disabled
|
||||||
|
/etc/init.d/zabbix-proxy stop
|
||||||
|
fi
|
||||||
|
|
||||||
|
true
|
Loading…
Reference in New Issue
Block a user