#!/bin/bash echo "Starting pre-requisite services..." service cron start echo "Starting Gonk node..." echo " ______ /______\\ | [==] | |______| \\______/ | | | |/\|/\|" if [ -f /var/gonk ]; then echo "Gonk has already been provisioned" service fail2ban start else echo "Running first time provisioning..." echo " Adding gonk user..." useradd -d /var/lib/asterisk/ -c "Gonk asterisk user" -r -s /sbin/nologin gonk echo " Setting permissions..." chown -R gonk:gonk /var/lib/asterisk chown -R gonk:gonk /var/log/asterisk chown -R gonk:gonk /var/spool/asterisk echo " Pulling config files for the first time..." curl -s https://ap5.gonknet.org/asterisk/$HOSTNAME/$GONK_KEY > /etc/asterisk/asterisk.conf curl -s https://ap5.gonknet.org/asterisk/pjsip/$HOSTNAME/$GONK_KEY > /etc/asterisk/pjsip.conf curl -s https://ap5.gonknet.org/asterisk/modules/$HOSTNAME/$GONK_KEY > /etc/asterisk/modules.conf curl -s https://ap5.gonknet.org/asterisk/logger/$HOSTNAME/$GONK_KEY > /etc/asterisk/logger.conf curl -s https://ap5.gonknet.org/asterisk/extensions/$HOSTNAME/$GONK_KEY > /etc/asterisk/extensions.conf sed -i "s/##EXTERNAL_IP##/$(curl -s https://ipv4.myip.wtf/text)/g" /etc/asterisk/pjsip.conf echo " Setting up config updater cron..." echo "26 * * * * gonk /usr/bin/reload" > /etc/cron.d/reload echo " Setting up VOIPBL..." echo " Downloading script..." curl -s https://gonknet.org/static/voipbl.sh > /usr/bin/voipbl.sh chmod 700 /usr/bin/voipbl.sh chmod +x /usr/bin/voipbl.sh echo " Setting up VOIPBL cron..." echo "13 */4 * * * root /usr/bin/voipbl.sh" > /etc/cron.d/voipbl echo " Setting up fail2ban" curl -s https://ap5.gonknet.org/f2b/asterisk/$HOSTNAME/$GONK_KEY > /etc/fail2ban/jail.d/asterisk.conf curl -s https://ap5.gonknet.org/f2b/voipbl/$HOSTNAME/$GONK_KEY > /etc/fail2ban/action.d/voipbl.conf rm /etc/fail2ban/jail.d/defaults-debian.conf asterisk -U gonk -G gonk sleep 2 kill -9 -- $(cat /var/run/asterisk/asterisk.pid) service fail2ban start echo " Running voipbl for the first time" /usr/bin/voipbl.sh touch /var/gonk fi echo "Starting Asterisk..." asterisk -U gonk -G gonk -f