mirror of
https://github.com/mail-in-a-box/mailinabox.git
synced 2025-04-21 03:02:09 +00:00
added dialog and blocks for korea as well as China
This commit is contained in:
parent
1437f7c891
commit
c563970355
7
conf/china
Normal file
7
conf/china
Normal file
@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
curl http://www.okean.com/antispam/iptables/rc.firewall.china > /tmp/china.sh
|
||||
chmod +x /tmp/china.sh
|
||||
source /tmp/china.sh
|
||||
rm -f /tmp/china.sh
|
||||
ipset save > /etc/ipset.up.rules
|
||||
iptables-save > /etc/iptables.up.rules
|
53
conf/dialog.sh
Executable file
53
conf/dialog.sh
Executable file
@ -0,0 +1,53 @@
|
||||
#!/bin/bash
|
||||
|
||||
HEIGHT=15
|
||||
WIDTH=40
|
||||
CHOICE_HEIGHT=4
|
||||
BACKTITLE="Do you want to block China and/or Korea?"
|
||||
TITLE="Country Block"
|
||||
MENU="A lot of spam originates from Korea and China. If you don't plan on having to ever have those countries connect to your server you may block them. \
|
||||
This will update weekly, and block all IP blocks to those countries \
|
||||
Choose one of the following options:"
|
||||
|
||||
OPTIONS=(1 "China"
|
||||
2 "Korea"
|
||||
3 "China and Korea")
|
||||
|
||||
CHOICE=$(dialog --clear \
|
||||
--backtitle "$BACKTITLE" \
|
||||
--title "$TITLE" \
|
||||
--menu "$MENU" \
|
||||
$HEIGHT $WIDTH $CHOICE_HEIGHT \
|
||||
"${OPTIONS[@]}" \
|
||||
2>&1 >/dev/tty)
|
||||
|
||||
clear
|
||||
case $CHOICE in
|
||||
1)
|
||||
echo "Bombing China"
|
||||
echo iptables-persistent iptables-persistent/autosave_v4 boolean true | debconf-set-selections
|
||||
echo iptables-persistent iptables-persistent/autosave_v6 boolean true | debconf-set-selections
|
||||
cp china /etc/cron.weekly/china
|
||||
chmod +x /etc/cron.weekly/china
|
||||
time /etc/cron.weekly/china
|
||||
apt-get install -y iptables-persistent
|
||||
;;
|
||||
2)
|
||||
echo "Starting the Korean war again"
|
||||
echo iptables-persistent iptables-persistent/autosave_v4 boolean true | debconf-set-selections
|
||||
echo iptables-persistent iptables-persistent/autosave_v6 boolean true | debconf-set-selections
|
||||
cp korea /etc/cron.weekly/korea
|
||||
chmod +x /etc/cron.weekly/korea
|
||||
time /etc/cron.weekly/korea
|
||||
apt-get install -y iptables-persistent
|
||||
;;
|
||||
3)
|
||||
echo "Blocking almost 1/3 of the world"
|
||||
echo iptables-persistent iptables-persistent/autosave_v4 boolean true | debconf-set-selections
|
||||
echo iptables-persistent iptables-persistent/autosave_v6 boolean true | debconf-set-selections
|
||||
cp sinokorea /etc/cron.weekly/sinokorea
|
||||
chmod +x /etc/cron.weekly/sinokorea
|
||||
time /etc/cron.weekly/sinokorea
|
||||
apt-get install -y iptables-persistent
|
||||
;;
|
||||
esac
|
7
conf/korea
Normal file
7
conf/korea
Normal file
@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
curl http://www.okean.com/antispam/iptables/rc.firewall.korea > /tmp/korea.sh
|
||||
chmod +x /tmp/korea.sh
|
||||
source /tmp/korea.sh
|
||||
rm -f /tmp/korea.sh
|
||||
ipset save > /etc/ipset.up.rules
|
||||
iptables-save > /etc/iptables.up.rules
|
7
conf/sinokorea
Normal file
7
conf/sinokorea
Normal file
@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
curl http://www.okean.com/antispam/iptables/rc.firewall.sinokorea > /tmp/sinokorea.sh
|
||||
chmod +x /tmp/sinokorea.sh
|
||||
source /tmp/sinokorea.sh
|
||||
rm -f /tmp/sinokorea.sh
|
||||
ipset save > /etc/ipset.up.rules
|
||||
iptables-save > /etc/iptables.up.rules
|
33
dialog.sh
33
dialog.sh
@ -1,33 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
HEIGHT=15
|
||||
WIDTH=40
|
||||
CHOICE_HEIGHT=4
|
||||
BACKTITLE="Backtitle here"
|
||||
TITLE="Title here"
|
||||
MENU="Choose one of the following options:"
|
||||
|
||||
OPTIONS=(1 "China"
|
||||
2 "Korea"
|
||||
3 "China and Korea")
|
||||
|
||||
CHOICE=$(dialog --clear \
|
||||
--backtitle "$BACKTITLE" \
|
||||
--title "$TITLE" \
|
||||
--menu "$MENU" \
|
||||
$HEIGHT $WIDTH $CHOICE_HEIGHT \
|
||||
"${OPTIONS[@]}" \
|
||||
2>&1 >/dev/tty)
|
||||
|
||||
clear
|
||||
case $CHOICE in
|
||||
1)
|
||||
echo "You chose Option 1"
|
||||
;;
|
||||
2)
|
||||
echo "You chose Option 2"
|
||||
;;
|
||||
3)
|
||||
echo "You chose Option 3"
|
||||
;;
|
||||
esac
|
@ -13,13 +13,14 @@ if [[ $EUID -ne 0 ]]; then
|
||||
exit
|
||||
fi
|
||||
apt-get update
|
||||
apt-get install -y ipset
|
||||
apt-get install -y ipset dialog
|
||||
mkdir /etc/ipset
|
||||
ipset create blacklist hash:net
|
||||
iptables -I INPUT -m set --match-set blacklist src -j DROP
|
||||
cp blacklist /etc/cron.daily/blacklist
|
||||
cp conf/blacklist /etc/cron.daily/blacklist
|
||||
chmod a+x /etc/cron.daily/blacklist
|
||||
time /etc/cron.daily/blacklist
|
||||
source conf/dialog.sh
|
||||
iptables-save > /etc/iptables.up.rules
|
||||
sed -i -e "\$apre-up ipset restore < /etc/ipset.up.rules" /etc/network/interfaces
|
||||
sed -i -e "\$apre-up iptables-restore < /etc/iptables.up.rules" /etc/network/interfaces
|
||||
|
Loading…
Reference in New Issue
Block a user