85 lines
1.9 KiB
Bash
Executable File
85 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Check zabbix dir
|
|
|
|
ZBXDIR="/etc/zabbix"
|
|
|
|
if [[ -d "$ZBXDIR" ]]
|
|
then
|
|
echo "Directory $ZBXDIR exist. Continue..."
|
|
else
|
|
echo "Directory $ZBXDIR does not exist! Please install zabbix (agent) first! Exiting."
|
|
exit 25
|
|
fi
|
|
|
|
# Creating dirs
|
|
|
|
mkdir /etc/zabbix/scripts
|
|
mkdir /etc/zabbix/scripts/asterisk
|
|
|
|
# Install scripts
|
|
|
|
echo "1 - SIP only scripts"
|
|
echo "2 - SIP peers and pjsip trunks"
|
|
|
|
read -r -p "Please choose agent scripts type [default: 1]:" response
|
|
|
|
if [ -z "$response" ]; then
|
|
response="1"
|
|
fi
|
|
|
|
case "$response" in
|
|
"1")
|
|
echo "Installing siponly agent scripts"
|
|
cp -r ./siponly/* /etc/zabbix/scripts/asterisk/
|
|
;;
|
|
|
|
"2")
|
|
echo "Installing sip peers and pjsip trunks agent script"
|
|
/usr/sbin/fwconsole stop
|
|
cp -r ./sip-peers_pjsip-trunks/* /etc/zabbix/scripts/asterisk
|
|
;;
|
|
|
|
*)
|
|
echo "Incorrect input. Aborted."
|
|
exit 25
|
|
;;
|
|
esac
|
|
|
|
chown -R zabbix:zabbix /etc/zabbix/scripts/asterisk
|
|
chmod +x /etc/zabbix/scripts/asterisk/*
|
|
|
|
# Check agentd dir
|
|
|
|
if [[ -d "/etc/zabbix/zabbix_agentd.conf.d" ]]
|
|
then
|
|
AGTD="zabbix_agentd.conf.d"
|
|
else
|
|
AGTD="/zabbix_agentd.d"
|
|
fi
|
|
|
|
|
|
# add items conf
|
|
|
|
touch /etc/zabbix/$AGTD/asterisk.conf
|
|
|
|
|
|
echo "UserParameter=asterisk.trunk,/etc/zabbix/scripts/asterisk/trunk.sh" >> /etc/zabbix/$AGTD/asterisk.conf
|
|
echo "UserParameter=asterisk.aster,/etc/zabbix/scripts/asterisk/aster.sh" >> /etc/zabbix/$AGTD/asterisk.conf
|
|
echo "UserParameter=asterisk.peers,/etc/zabbix/scripts/asterisk/peers.sh" >> /etc/zabbix/$AGTD/asterisk.conf
|
|
|
|
chown -R zabbix:zabbix /etc/zabbix/$AGTD/asterisk.conf
|
|
|
|
# Add sudo nopasswd for zabbix
|
|
|
|
echo "#zabbix-agent" >> /etc/sudoers
|
|
echo "zabbix ALL= NOPASSWD: /bin/grep, /bin/cut, /usr/sbin/asterisk" >> /etc/sudoers
|
|
|
|
# Restarting zabbix agent
|
|
|
|
echo "Restarting zabbix agent..."
|
|
systemctl restart zabbix-agent
|
|
systemctl enable zabbix-agent
|
|
|
|
echo "Install completed!"
|