mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-19 07:23:03 +02:00
zabbix_agentd: New addon
New addon for monitoring IPFire by Zabbix Monitoring (https://www.zabbix.com/features). See https://forum.ipfire.org/viewtopic.php?f=52&t=22039 and https://lists.ipfire.org/pipermail/development/2019-February/005324.html for further details. Best regards, Alex Signed-off-by: Alexander Koch <ipfire@starkstromkonsument.de> Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
This commit is contained in:
committed by
Michael Tremer
parent
57d1564b3e
commit
06fc6170a2
2
config/backup/includes/zabbix_agentd
Normal file
2
config/backup/includes/zabbix_agentd
Normal file
@@ -0,0 +1,2 @@
|
||||
/etc/sudoers.d/zabbix.user
|
||||
/etc/zabbix_agentd/*
|
||||
@@ -42,3 +42,4 @@ nut:x:115:
|
||||
cdrom:x:116:
|
||||
usb:x:117:
|
||||
samba:x:1000:
|
||||
zabbix:x:118:
|
||||
|
||||
@@ -21,3 +21,4 @@ cyrus:x:111:12:Cyrus user:/usr/cyrus:
|
||||
filter:x:112:12:Spam user:/home/filter:/bin/false
|
||||
asterisk:x:114:114:Asterisk user:/var/empty:/bin/false
|
||||
samba:x:1000:1000:Samba User:/var/empty:/bin/false
|
||||
zabbix:x:118:118:Zabbix Monitoring:/var/empty:/bin/false
|
||||
|
||||
17
config/rootfiles/packages/zabbix_agentd
Normal file
17
config/rootfiles/packages/zabbix_agentd
Normal file
@@ -0,0 +1,17 @@
|
||||
etc/logrotate.d/zabbix_agentd
|
||||
etc/rc.d/init.d/zabbix_agentd
|
||||
etc/sudoers.d/zabbix.user
|
||||
etc/zabbix_agentd
|
||||
etc/zabbix_agentd/scripts
|
||||
etc/zabbix_agentd/zabbix_agentd.conf
|
||||
etc/zabbix_agentd/zabbix_agentd.d
|
||||
usr/bin/zabbix_get
|
||||
usr/bin/zabbix_sender
|
||||
usr/lib/modules
|
||||
usr/lib/zabbix
|
||||
usr/sbin/zabbix_agentd
|
||||
#usr/share/man/man1/zabbix_get.1
|
||||
#usr/share/man/man1/zabbix_sender.1
|
||||
#usr/share/man/man8/zabbix_agentd.8
|
||||
var/ipfire/backup/addons/includes/zabbix_agentd
|
||||
#var/log/zabbix
|
||||
9
config/zabbix_agentd/logrotate
Normal file
9
config/zabbix_agentd/logrotate
Normal file
@@ -0,0 +1,9 @@
|
||||
/var/log/zabbix/zabbix_agentd.log {
|
||||
monthly
|
||||
rotate 12
|
||||
compress
|
||||
delaycompress
|
||||
missingok
|
||||
notifempty
|
||||
create 0640 zabbix zabbix
|
||||
}
|
||||
17
config/zabbix_agentd/sudoers
Normal file
17
config/zabbix_agentd/sudoers
Normal file
@@ -0,0 +1,17 @@
|
||||
# Include file for sudoers file
|
||||
#
|
||||
# This is needed for some userparameters to be able to execute commands that only run as root (using sudo)
|
||||
# e.g. /usr/bin/openssl or /usr/sbin/smartctl
|
||||
#
|
||||
# USE AT YOU'RE OWN RISK. USING THIS WRONG CAN RESULT IN A SECURITY BREACH!
|
||||
#
|
||||
# Some hints:
|
||||
# - It is strongly recommended to edit this file only using the visudo -f <filename> command. If you mess up this file,
|
||||
# you might end up locking yourself out of your system!
|
||||
# - Append the full path to each command, using "," as separator.
|
||||
# - Only add commands you really need. Zabbix should not have more rights than it has to.
|
||||
#
|
||||
# Uncomment the following two lines and edit the example of commands to fit your needs:
|
||||
#
|
||||
#Defaults:zabbix !requiretty
|
||||
#zabbix ALL=(ALL) NOPASSWD: <path to command1>, <path to command2>
|
||||
395
config/zabbix_agentd/zabbix_agentd.conf
Normal file
395
config/zabbix_agentd/zabbix_agentd.conf
Normal file
@@ -0,0 +1,395 @@
|
||||
# This is a configuration file for Zabbix agent daemon (Unix)
|
||||
# To get more information about Zabbix, visit http://www.zabbix.com
|
||||
|
||||
############ GENERAL PARAMETERS #################
|
||||
|
||||
### Option: PidFile
|
||||
# Name of PID file.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# PidFile=/tmp/zabbix_agentd.pid
|
||||
|
||||
PidFile=/var/run/zabbix/zabbix_agentd.pid
|
||||
|
||||
### Option: LogType
|
||||
# Specifies where log messages are written to:
|
||||
# system - syslog
|
||||
# file - file specified with LogFile parameter
|
||||
# console - standard output
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# LogType=file
|
||||
|
||||
### Option: LogFile
|
||||
# Log file name for LogType 'file' parameter.
|
||||
#
|
||||
# Mandatory: yes, if LogType is set to file, otherwise no
|
||||
# Default:
|
||||
# LogFile=
|
||||
|
||||
LogFile=/var/log/zabbix/zabbix_agentd.log
|
||||
|
||||
### Option: LogFileSize
|
||||
# Maximum size of log file in MB.
|
||||
# 0 - disable automatic log rotation.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 0-1024
|
||||
# Default:
|
||||
# LogFileSize=1
|
||||
|
||||
LogFileSize=0
|
||||
|
||||
### Option: DebugLevel
|
||||
# Specifies debug level:
|
||||
# 0 - basic information about starting and stopping of Zabbix processes
|
||||
# 1 - critical information
|
||||
# 2 - error information
|
||||
# 3 - warnings
|
||||
# 4 - for debugging (produces lots of information)
|
||||
# 5 - extended debugging (produces even more information)
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 0-5
|
||||
# Default:
|
||||
# DebugLevel=3
|
||||
|
||||
### Option: SourceIP
|
||||
# Source IP address for outgoing connections.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# SourceIP=
|
||||
|
||||
### Option: EnableRemoteCommands
|
||||
# Whether remote commands from Zabbix server are allowed.
|
||||
# 0 - not allowed
|
||||
# 1 - allowed
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# EnableRemoteCommands=0
|
||||
|
||||
### Option: LogRemoteCommands
|
||||
# Enable logging of executed shell commands as warnings.
|
||||
# 0 - disabled
|
||||
# 1 - enabled
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# LogRemoteCommands=0
|
||||
|
||||
##### Passive checks related
|
||||
|
||||
### Option: Server
|
||||
# List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies.
|
||||
# Incoming connections will be accepted only from the hosts listed here.
|
||||
# If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally
|
||||
# and '::/0' will allow any IPv4 or IPv6 address.
|
||||
# '0.0.0.0/0' can be used to allow any IPv4 address.
|
||||
# Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
|
||||
#
|
||||
# Mandatory: yes, if StartAgents is not explicitly set to 0
|
||||
# Default:
|
||||
# Server=
|
||||
|
||||
Server=127.0.0.1
|
||||
|
||||
### Option: ListenPort
|
||||
# Agent will listen on this port for connections from the server.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 1024-32767
|
||||
# Default:
|
||||
# ListenPort=10050
|
||||
|
||||
### Option: ListenIP
|
||||
# List of comma delimited IP addresses that the agent should listen on.
|
||||
# First IP address is sent to Zabbix server if connecting to it to retrieve list of active checks.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# ListenIP=0.0.0.0
|
||||
|
||||
### Option: StartAgents
|
||||
# Number of pre-forked instances of zabbix_agentd that process passive checks.
|
||||
# If set to 0, disables passive checks and the agent will not listen on any TCP port.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 0-100
|
||||
# Default:
|
||||
# StartAgents=3
|
||||
|
||||
##### Active checks related
|
||||
|
||||
### Option: ServerActive
|
||||
# List of comma delimited IP:port (or DNS name:port) pairs of Zabbix servers and Zabbix proxies for active checks.
|
||||
# If port is not specified, default port is used.
|
||||
# IPv6 addresses must be enclosed in square brackets if port for that host is specified.
|
||||
# If port is not specified, square brackets for IPv6 addresses are optional.
|
||||
# If this parameter is not specified, active checks are disabled.
|
||||
# Example: ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# ServerActive=
|
||||
|
||||
ServerActive=127.0.0.1
|
||||
|
||||
### Option: Hostname
|
||||
# Unique, case sensitive hostname.
|
||||
# Required for active checks and must match hostname as configured on the server.
|
||||
# Value is acquired from HostnameItem if undefined.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# Hostname=
|
||||
|
||||
### Option: HostnameItem
|
||||
# Item used for generating Hostname if it is undefined. Ignored if Hostname is defined.
|
||||
# Does not support UserParameters or aliases.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# HostnameItem=system.hostname
|
||||
|
||||
### Option: HostMetadata
|
||||
# Optional parameter that defines host metadata.
|
||||
# Host metadata is used at host auto-registration process.
|
||||
# An agent will issue an error and not start if the value is over limit of 255 characters.
|
||||
# If not defined, value will be acquired from HostMetadataItem.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 0-255 characters
|
||||
# Default:
|
||||
# HostMetadata=
|
||||
|
||||
### Option: HostMetadataItem
|
||||
# Optional parameter that defines an item used for getting host metadata.
|
||||
# Host metadata is used at host auto-registration process.
|
||||
# During an auto-registration request an agent will log a warning message if
|
||||
# the value returned by specified item is over limit of 255 characters.
|
||||
# This option is only used when HostMetadata is not defined.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# HostMetadataItem=
|
||||
|
||||
### Option: RefreshActiveChecks
|
||||
# How often list of active checks is refreshed, in seconds.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 60-3600
|
||||
# Default:
|
||||
# RefreshActiveChecks=120
|
||||
|
||||
### Option: BufferSend
|
||||
# Do not keep data longer than N seconds in buffer.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 1-3600
|
||||
# Default:
|
||||
# BufferSend=5
|
||||
|
||||
### Option: BufferSize
|
||||
# Maximum number of values in a memory buffer. The agent will send
|
||||
# all collected data to Zabbix Server or Proxy if the buffer is full.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 2-65535
|
||||
# Default:
|
||||
# BufferSize=100
|
||||
|
||||
### Option: MaxLinesPerSecond
|
||||
# Maximum number of new lines the agent will send per second to Zabbix Server
|
||||
# or Proxy processing 'log' and 'logrt' active checks.
|
||||
# The provided value will be overridden by the parameter 'maxlines',
|
||||
# provided in 'log' or 'logrt' item keys.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 1-1000
|
||||
# Default:
|
||||
# MaxLinesPerSecond=20
|
||||
|
||||
############ ADVANCED PARAMETERS #################
|
||||
|
||||
### Option: Alias
|
||||
# Sets an alias for an item key. It can be used to substitute long and complex item key with a smaller and simpler one.
|
||||
# Multiple Alias parameters may be present. Multiple parameters with the same Alias key are not allowed.
|
||||
# Different Alias keys may reference the same item key.
|
||||
# For example, to retrieve the ID of user 'zabbix':
|
||||
# Alias=zabbix.userid:vfs.file.regexp[/etc/passwd,^zabbix:.:([0-9]+),,,,\1]
|
||||
# Now shorthand key zabbix.userid may be used to retrieve data.
|
||||
# Aliases can be used in HostMetadataItem but not in HostnameItem parameters.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range:
|
||||
# Default:
|
||||
|
||||
### Option: Timeout
|
||||
# Spend no more than Timeout seconds on processing
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 1-30
|
||||
# Default:
|
||||
# Timeout=3
|
||||
|
||||
### Option: AllowRoot
|
||||
# Allow the agent to run as 'root'. If disabled and the agent is started by 'root', the agent
|
||||
# will try to switch to the user specified by the User configuration option instead.
|
||||
# Has no effect if started under a regular user.
|
||||
# 0 - do not allow
|
||||
# 1 - allow
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# AllowRoot=0
|
||||
|
||||
### Option: User
|
||||
# Drop privileges to a specific, existing user on the system.
|
||||
# Only has effect if run as 'root' and AllowRoot is disabled.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# User=zabbix
|
||||
|
||||
### Option: Include
|
||||
# You may include individual files or all files in a directory in the configuration file.
|
||||
# Installing Zabbix will create include directory in /usr/local/etc, unless modified during the compile time.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# Include=
|
||||
|
||||
Include=/etc/zabbix_agentd/zabbix_agentd.d/*.conf
|
||||
|
||||
|
||||
####### USER-DEFINED MONITORED PARAMETERS #######
|
||||
|
||||
### Option: UnsafeUserParameters
|
||||
# Allow all characters to be passed in arguments to user-defined parameters.
|
||||
# The following characters are not allowed:
|
||||
# \ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
|
||||
# Additionally, newline characters are not allowed.
|
||||
# 0 - do not allow
|
||||
# 1 - allow
|
||||
#
|
||||
# Mandatory: no
|
||||
# Range: 0-1
|
||||
# Default:
|
||||
# UnsafeUserParameters=0
|
||||
|
||||
### Option: UserParameter
|
||||
# User-defined parameter to monitor. There can be several user-defined parameters.
|
||||
# Format: UserParameter=<key>,<shell command>
|
||||
# See 'zabbix_agentd' directory for examples.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# UserParameter=
|
||||
|
||||
####### LOADABLE MODULES #######
|
||||
|
||||
### Option: LoadModulePath
|
||||
# Full path to location of agent modules.
|
||||
# Default depends on compilation options.
|
||||
# To see the default path run command "zabbix_agentd --help".
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# LoadModulePath=/usr/lib/modules
|
||||
|
||||
LoadModulePath=/usr/lib/zabbix
|
||||
|
||||
### Option: LoadModule
|
||||
# Module to load at agent startup. Modules are used to extend functionality of the agent.
|
||||
# Format: LoadModule=<module.so>
|
||||
# The modules must be located in directory specified by LoadModulePath.
|
||||
# It is allowed to include multiple LoadModule parameters.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# LoadModule=
|
||||
|
||||
####### TLS-RELATED PARAMETERS #######
|
||||
|
||||
### Option: TLSConnect
|
||||
# How the agent should connect to server or proxy. Used for active checks.
|
||||
# Only one value can be specified:
|
||||
# unencrypted - connect without encryption
|
||||
# psk - connect using TLS and a pre-shared key
|
||||
# cert - connect using TLS and a certificate
|
||||
#
|
||||
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
|
||||
# Default:
|
||||
# TLSConnect=unencrypted
|
||||
|
||||
### Option: TLSAccept
|
||||
# What incoming connections to accept.
|
||||
# Multiple values can be specified, separated by comma:
|
||||
# unencrypted - accept connections without encryption
|
||||
# psk - accept connections secured with TLS and a pre-shared key
|
||||
# cert - accept connections secured with TLS and a certificate
|
||||
#
|
||||
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
|
||||
# Default:
|
||||
# TLSAccept=unencrypted
|
||||
|
||||
### Option: TLSCAFile
|
||||
# Full pathname of a file containing the top-level CA(s) certificates for
|
||||
# peer certificate verification.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# TLSCAFile=
|
||||
|
||||
### Option: TLSCRLFile
|
||||
# Full pathname of a file containing revoked certificates.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# TLSCRLFile=
|
||||
|
||||
### Option: TLSServerCertIssuer
|
||||
# Allowed server certificate issuer.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# TLSServerCertIssuer=
|
||||
|
||||
### Option: TLSServerCertSubject
|
||||
# Allowed server certificate subject.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# TLSServerCertSubject=
|
||||
|
||||
### Option: TLSCertFile
|
||||
# Full pathname of a file containing the agent certificate or certificate chain.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# TLSCertFile=
|
||||
|
||||
### Option: TLSKeyFile
|
||||
# Full pathname of a file containing the agent private key.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# TLSKeyFile=
|
||||
|
||||
### Option: TLSPSKIdentity
|
||||
# Unique, case sensitive string used to identify the pre-shared key.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# TLSPSKIdentity=
|
||||
|
||||
### Option: TLSPSKFile
|
||||
# Full pathname of a file containing the pre-shared key.
|
||||
#
|
||||
# Mandatory: no
|
||||
# Default:
|
||||
# TLSPSKFile=
|
||||
123
lfs/zabbix_agentd
Normal file
123
lfs/zabbix_agentd
Normal file
@@ -0,0 +1,123 @@
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# Definitions
|
||||
###############################################################################
|
||||
|
||||
include Config
|
||||
|
||||
VER = 4.0.4
|
||||
|
||||
THISAPP = zabbix-$(VER)
|
||||
DL_FILE = $(THISAPP).tar.gz
|
||||
DL_FROM = $(URL_IPFIRE)
|
||||
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
||||
TARGET = $(DIR_INFO)/$(THISAPP)
|
||||
PROG = zabbix_agentd
|
||||
PAK_VER = 1
|
||||
DEPS = ""
|
||||
|
||||
###############################################################################
|
||||
# Top-level Rules
|
||||
###############################################################################
|
||||
|
||||
objects = $(DL_FILE)
|
||||
|
||||
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
||||
|
||||
$(DL_FILE)_MD5 = 46fdb83d4b24e13127a20a3e874b1d8f
|
||||
|
||||
install : $(TARGET)
|
||||
|
||||
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
|
||||
|
||||
download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
|
||||
md5 : $(subst %,%_MD5,$(objects))
|
||||
|
||||
dist:
|
||||
@$(PAK)
|
||||
|
||||
###############################################################################
|
||||
# Downloading, checking, md5sum
|
||||
###############################################################################
|
||||
|
||||
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
|
||||
@$(CHECK)
|
||||
|
||||
$(patsubst %,$(DIR_DL)/%,$(objects)) :
|
||||
@$(LOAD)
|
||||
|
||||
$(subst %,%_MD5,$(objects)) :
|
||||
@$(MD5)
|
||||
|
||||
###############################################################################
|
||||
# Installation Details
|
||||
###############################################################################
|
||||
|
||||
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
@$(PREBUILD)
|
||||
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axvf $(DIR_DL)/$(DL_FILE)
|
||||
cd $(DIR_APP) && ./configure \
|
||||
--prefix=/usr \
|
||||
--enable-agent \
|
||||
--sysconfdir=/etc/zabbix_agentd \
|
||||
--with-openssl
|
||||
|
||||
cd $(DIR_APP) && make
|
||||
cd $(DIR_APP) && make install
|
||||
|
||||
# Create config directory and create files
|
||||
-rmdir /etc/zabbix_agentd/zabbix_agentd.conf.d
|
||||
-mkdir -pv /etc/zabbix_agentd/zabbix_agentd.d
|
||||
-mkdir -pv /etc/zabbix_agentd/scripts
|
||||
install -v -m 644 $(DIR_SRC)/config/zabbix_agentd/zabbix_agentd.conf \
|
||||
/etc/zabbix_agentd/zabbix_agentd.conf
|
||||
|
||||
# Create directory for additional agent modules
|
||||
-mkdir -pv /usr/lib/zabbix
|
||||
|
||||
# Create directory for logging
|
||||
-mkdir -pv /var/log/zabbix
|
||||
chown zabbix.zabbix /var/log/zabbix
|
||||
|
||||
# Create directory for pid.
|
||||
-mkdir -pv /var/run/zabbix
|
||||
chown zabbix.zabbix /var/run/zabbix
|
||||
|
||||
# Install initscripts
|
||||
$(call INSTALL_INITSCRIPT,zabbix_agentd)
|
||||
|
||||
# Install sudoers include file
|
||||
install -v -m 644 $(DIR_SRC)/config/zabbix_agentd/sudoers \
|
||||
/etc/sudoers.d/zabbix.user
|
||||
|
||||
# Install include file for backup
|
||||
install -v -m 644 $(DIR_SRC)/config/backup/includes/zabbix_agentd \
|
||||
/var/ipfire/backup/addons/includes/zabbix_agentd
|
||||
|
||||
# Install include file for Logrotate
|
||||
-mkdir -pv /etc/logrotate.d
|
||||
install -v -m 644 $(DIR_SRC)/config/zabbix_agentd/logrotate \
|
||||
/etc/logrotate.d/zabbix_agentd
|
||||
|
||||
@rm -rf $(DIR_APP)
|
||||
@$(POSTBUILD)
|
||||
1
make.sh
1
make.sh
@@ -1587,6 +1587,7 @@ buildipfire() {
|
||||
lfsmake2 libedit
|
||||
lfsmake2 knot
|
||||
lfsmake2 spectre-meltdown-checker
|
||||
lfsmake2 zabbix_agentd
|
||||
}
|
||||
|
||||
buildinstaller() {
|
||||
|
||||
45
src/initscripts/packages/zabbix_agentd
Normal file
45
src/initscripts/packages/zabbix_agentd
Normal file
@@ -0,0 +1,45 @@
|
||||
#!/bin/sh
|
||||
########################################################################
|
||||
# Begin $rc_base/init.d/zabbix_agentd
|
||||
#
|
||||
# Description : This script starts the Zabbix Agent as a daemon (zabbix_agentd)
|
||||
#
|
||||
# Authors : Alexander Koch (ipfire@starkstromkonsument.de)
|
||||
#
|
||||
# Version : 01.00
|
||||
#
|
||||
# Notes :
|
||||
#
|
||||
########################################################################
|
||||
|
||||
. /etc/sysconfig/rc
|
||||
. ${rc_functions}
|
||||
|
||||
case "${1}" in
|
||||
start)
|
||||
boot_mesg "Starting Zabbix Agent..."
|
||||
loadproc /usr/sbin/zabbix_agentd -c /etc/zabbix_agentd/zabbix_agentd.conf
|
||||
;;
|
||||
|
||||
stop)
|
||||
boot_mesg "Stopping Zabbix Agent..."
|
||||
killproc /usr/sbin/zabbix_agentd
|
||||
;;
|
||||
|
||||
restart)
|
||||
${0} stop
|
||||
sleep 1
|
||||
${0} start
|
||||
;;
|
||||
|
||||
status)
|
||||
statusproc /usr/sbin/zabbix_agentd
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Usage: ${0} {start|stop|restart|status}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# End $rc_base/init.d/zabbix_agentd
|
||||
@@ -27,5 +27,6 @@
|
||||
|
||||
/var/run/ovpnserver.log file 644 nobody nobody
|
||||
/var/run/openvpn dir 644 nobody nobody
|
||||
/var/run/zabbix dir 755 zabbix zabbix
|
||||
|
||||
# End /etc/sysconfig/createfiles
|
||||
|
||||
38
src/paks/zabbix_agentd/install.sh
Normal file
38
src/paks/zabbix_agentd/install.sh
Normal file
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
############################################################################
|
||||
# #
|
||||
# This file is part of the IPFire Firewall. #
|
||||
# #
|
||||
# IPFire is free software; you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation; either version 2 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# IPFire is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with IPFire; if not, write to the Free Software #
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||
# #
|
||||
# Copyright (C) 2007 IPFire-Team <info@ipfire.org>. #
|
||||
# #
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
|
||||
extract_files
|
||||
|
||||
# Create symlinks for runlevel interaction.
|
||||
ln -sf ../init.d/zabbix_agentd /etc/rc.d/rc3.d/S65zabbix_agentd
|
||||
ln -sf ../init.d/zabbix_agentd /etc/rc.d/rc0.d/K02zabbix_agentd
|
||||
ln -sf ../init.d/zabbix_agentd /etc/rc.d/rc6.d/K02zabbix_agentd
|
||||
|
||||
# Create additonal directories and set permissions
|
||||
mkdir -pv /var/log/zabbix
|
||||
chown zabbix.zabbix /var/log/zabbix
|
||||
|
||||
restore_backup ${NAME}
|
||||
start_service --background ${NAME}
|
||||
30
src/paks/zabbix_agentd/uninstall.sh
Normal file
30
src/paks/zabbix_agentd/uninstall.sh
Normal file
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
############################################################################
|
||||
# #
|
||||
# This file is part of the IPFire Firewall. #
|
||||
# #
|
||||
# IPFire is free software; you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation; either version 2 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# IPFire is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with IPFire; if not, write to the Free Software #
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||
# #
|
||||
# Copyright (C) 2007 IPFire-Team <info@ipfire.org>. #
|
||||
# #
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
stop_service ${NAME}
|
||||
make_backup ${NAME}
|
||||
remove_files
|
||||
|
||||
# Remove init-scripts and symlinks
|
||||
rm -rfv /etc/rc.d/rc*.d/*zabbix_agentd
|
||||
26
src/paks/zabbix_agentd/update.sh
Normal file
26
src/paks/zabbix_agentd/update.sh
Normal file
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
############################################################################
|
||||
# #
|
||||
# This file is part of the IPFire Firewall. #
|
||||
# #
|
||||
# IPFire is free software; you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation; either version 2 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# IPFire is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with IPFire; if not, write to the Free Software #
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||
# #
|
||||
# Copyright (C) 2007 IPFire-Team <info@ipfire.org>. #
|
||||
# #
|
||||
############################################################################
|
||||
#
|
||||
. /opt/pakfire/lib/functions.sh
|
||||
./uninstall.sh
|
||||
./install.sh
|
||||
Reference in New Issue
Block a user