Files
iptables-rugov-block/install.sh
2024-05-02 20:49:07 +02:00

51 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
set -euo pipefail
IFS=$'\n\t'
FMTCURID=$(id -u)
FMTDIR=$(dirname "$(readlink -f "$0")")
FMTDOLOGS=""
if [[ -n ${1+x} && "$1" == "--log" ]];then
FMTDOLOGS="do"
fi
if [[ "$FMTCURID" != "0" ]]; then
echo "The script is intended to run under root"
exit 1
fi
if [[ ! -d "/etc/iptables/" ]]; then
echo "The script is intended to be used with iptables. Are you sure all the necessary packages are installed? Run: 'sudo apt-get install iptables-persistent'"
exit 2
fi
if [[ "$FMTDOLOGS" ]]; then
echo "Installing rsyslogd config..."
if [[ ! -f "/etc/rsyslog.d/50-default.conf" ]]; then
echo "rsyslog.d/50-default.conf not found, are you sure rsyslogd is installed? Run: 'sudo apt-get install rsyslog'"
exit 1
fi
cat "$FMTDIR/51-iptables-rugov.conf" > /etc/rsyslog.d/51-iptables-rugov.conf
service rsyslog restart
fi
echo "Installing common files..."
mkdir -p /var/log/rugov_blacklist
chown syslog:adm /var/log/rugov_blacklist
chmod 0755 /var/log/rugov_blacklist
cat "$FMTDIR/updater.sh" > /var/log/rugov_blacklist/updater.sh
chmod +x /var/log/rugov_blacklist/updater.sh
touch /var/log/rugov_blacklist/blacklist.txt
echo "Running initial setup process..."
/var/log/rugov_blacklist/updater.sh
ln -sf /var/log/rugov_blacklist/updater.sh /etc/cron.daily/rugov_updater
echo "Installation finished successfully!"