айпитаблы или заблочить внешку
Re: айпитаблы или заблочить внешку
Gen1us2k
странно но не вижу
кто нить скиньте торрент клиент под альт плз
странно но не вижу
кто нить скиньте торрент клиент под альт плз
SSD хочу
- Raven
- Бородатый сис
- Сообщения: 2800
- Зарегистрирован: 03 мар 2010, 15:12
- ОС: RHEL 8
- Откуда: Из серверной
Re: айпитаблы или заблочить внешку
Скоро!!!sim писал(а):кто нить скиньте торрент клиент под альт плз
Я не злопамятный, я просто часто ковыряю логи
Re: айпитаблы или заблочить внешку
Raven
ждуууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууу
ждуууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууууу
SSD хочу
- ИМХО
- Бытовой хакер
- Сообщения: 975
- Зарегистрирован: 02 мар 2010, 13:21
- ОС: Maui 2
- Откуда: Чолпон-Ата
- Контактная информация:
Re: айпитаблы или заблочить внешку
есть трансмиссион и кторрент.
ftp://ftp.totel.kg/incoming/personal/A- ... /ktorrent/
ftp://ftp.totel.kg/incoming/personal/A- ... /ktorrent/
Re: айпитаблы или заблочить внешку
ну так вот что у мну получилось он мну говорит
команда
но на иностранные сайты не ходит
люди можете дат гугл хром, по сайтам классная бродилка, самая быстрая из всех по крайней мере на винде
что нужно прописать чтобы открыть асю ?
Код: Выделить всё
Starting firewall: iptablesBad argument `5190'
Try `iptables -h' or 'iptables --help' for more information.
Bad argument `5190'
Try `iptables -h' or 'iptables --help' for more information.
.
содержание файла/home/sim/rules/iptables start
Код: Выделить всё
#!/bin/bash
IPT=/sbin/iptables
EXT=eth0 #Мой интерфейс смотрящий в инет
start_fw()
{
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP
$IPT -A INPUT -f -i $EXT -j DROP
$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPT -A INPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-IN " --log-tcp-options --log-ip-options
$IPT -A INPUT --fragment -p ICMP -j DROP
$IPT -A OUTPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-OUT " --log-tcp-options --log-ip-options
$IPT -A OUTPUT --fragment -p ICMP -j DROP
$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type source-quench -j ACCEPT
$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type source-quench -j ACCEPT
$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type echo-reply -j ACCEPT
$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type echo-request -j ACCEPT
$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.112.96.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.115.192.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 195.38.160.0/19 -m multiport --dport 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.176.111.0/24 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.26.220.0/22 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.2.224.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 81.20.16.0/20 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.42.96.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 77.95.56.0/21 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 94.143.192.0/21 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.241.0.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 213.145.128.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.113.0.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 77.235.0.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 92.245.96.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.152.36.0/24 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.152.37.0/24 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.205.48.0/22 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 95.215.244.0/22 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 217.29.16.0/20 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 81.88.192.0/20 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 89.237.192.0/18 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.152.37.0/24 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 92.62.64.0/20 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.97.0.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 109.201.160.0/19 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 193.106.48.0/22 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.213.233.0/24 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 109.71.224.0/21 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.192.64.0/22 -m multiport --dports 80,3258 -j ACCEPT
$IPT -A INPUT -i $EXT -j DROP
$IPT -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPT -A OUTPUT -d 85.115.192.0/19 -j ACCEPT
$IPT -A OUTPUT -d 212.112.96.0/19 -j ACCEPT
$IPT -A OUTPUT -d 195.38.160.0/19 -j ACCEPT
$IPT -A OUTPUT -d 194.176.111.0/24 -j ACCEPT
$IPT -A OUTPUT -d 85.26.220.0/22 -j ACCEPT
$IPT -A OUTPUT -d 212.2.224.0/19 -j ACCEPT
$IPT -A OUTPUT -d 81.20.16.0/20 -j ACCEPT
$IPT -A OUTPUT -d 212.42.96.0/19 -j ACCEPT
$IPT -A OUTPUT -d 77.95.56.0/21 -j ACCEPT
$IPT -A OUTPUT -d 94.143.192.0/21 -j ACCEPT
$IPT -A OUTPUT -d 212.241.0.0/19 -j ACCEPT
$IPT -A OUTPUT -d 213.145.128.0/19 -j ACCEPT
$IPT -A OUTPUT -d 85.113.0.0/19 -j ACCEPT
$IPT -A OUTPUT -d 77.235.0.0/19 -j ACCEPT
$IPT -A OUTPUT -d 92.245.96.0/19 -j ACCEPT
$IPT -A OUTPUT -d 194.152.36.0/24 -j ACCEPT
$IPT -A OUTPUT -d 194.152.37.0/24 -j ACCEPT
$IPT -A OUTPUT -d 91.205.48.0/22 -j ACCEPT
$IPT -A OUTPUT -d 95.215.244.0/22 -j ACCEPT
$IPT -A OUTPUT -d 217.29.16.0/20 -j ACCEPT
$IPT -A OUTPUT -d 81.88.192.0/20 -j ACCEPT
$IPT -A OUTPUT -d 89.237.192.0/18 -j ACCEPT
$IPT -A OUTPUT -d 194.152.37.0/24 -j ACCEPT
$IPT -A OUTPUT -d 92.62.64.0/20 -j ACCEPT
$IPT -A OUTPUT -d 212.97.0.0/19 -j ACCEPT
$IPT -A OUTPUT -d 109.201.160.0/19 -j ACCEPT
$IPT -A OUTPUT -d 193.106.48.0/22 -j ACCEPT
$IPT -A OUTPUT -d 91.213.233.0/24 -j ACCEPT
$IPT -A OUTPUT -d 109.71.224.0/21 -j ACCEPT
$IPT -A OUTPUT -d 91.192.64.0/22 -j ACCEPT
$IPT -A OUTPUT -o $EXT -p tcp -s $EXT_IP --dport 5190 --syn -m state --state NEW -j LOG --log-prefix "ICQ " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -o $EXT -p tcp -s $EXT_IP --dport 5190 --syn -m state --state NEW -j ACCEPT
$IPT -A OUTPUT -f -j LOG --log-prefix "DROPPED " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -f -j DROP
}
case "$1" in
start) echo -n "Starting firewall: iptables"
start_fw
echo "."
;;
stop) echo -n "Stopping firewall: iptables"
$IPT -F
$IPT -X
$IPT -t nat -F
$IPT -P ACCEPT
$IPT -P INPUT ACCEPT
$IPT -P OUTPUT ACCEPT
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
echo "."
;;
block) echo -n "Locking firewall: iptables"
$IPT -F
$IPT -X
$IPT -t nat -F
$IPT -P FORWARD DROP
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
echo "."
;;
save) echo -n "Saving firewall: iptables"
iptables-save > /etc/rules-save
echo "."
;;
restart) echo -n "Restarting firewall: iptables"
iptables-save > /etc/rules-save
iptables -F
iptables -X
cat /etc/rules-save | iptables-restore
echo "."
;;
reload|force-reload) echo -n "Reloading configuration files for firewall: iptables"
echo "."
;;
*) echo "Usage: /etc/init.d/rules start|stop|block|restart|reload|force-reload"
exit 1
;;
esac
exit 0
люди можете дат гугл хром, по сайтам классная бродилка, самая быстрая из всех по крайней мере на винде
что нужно прописать чтобы открыть асю ?
SSD хочу
- Raven
- Бородатый сис
- Сообщения: 2800
- Зарегистрирован: 03 мар 2010, 15:12
- ОС: RHEL 8
- Откуда: Из серверной
Re: айпитаблы или заблочить внешку
не прописан. Тут твой внешний ип нужон.sim писал(а):$EXT_IP
измени
Код: Выделить всё
#!/bin/bash
IPT=/sbin/iptables
EXT=eth0 #Мой интерфейс смотрящий в инет
Код: Выделить всё
#!/bin/bash
IPT=/sbin/iptables
EXT=eth0 #Твой интерфейс смотрящий в инет
EXT_IP= #Твой внешний ип
Я не злопамятный, я просто часто ковыряю логи
- Raven
- Бородатый сис
- Сообщения: 2800
- Зарегистрирован: 03 мар 2010, 15:12
- ОС: RHEL 8
- Откуда: Из серверной
Re: айпитаблы или заблочить внешку
Вот еще пример конфига блокинга внехи. Скрипт сам выкачивает с эльката список сетей, парсит его и составляет из него правила для фаервола. Основан на старой версии моего конфига.
В результате работы скрипта создается скрипт с правилами для фаервола, копируется в /etc/init.d, старый конфиг резервируется, а новый запускается. Сгенерированый набор правил получается следующий
P.S. Требует наличия установленного в системе wget
Код: Выделить всё
#!/bin/bash
TMP=/tmp
URL=http://www.elcat.kg/ip/kg-nets.txt
INIT=$INIT
NETS=/tmp/kg-nets.txt
wget -O $NETS $URL
echo '#!/bin/sh' > $TMP/rules
echo 'IPT=/sbin/iptables' >> $TMP/rules
echo 'EXT=eth0' >> $TMP/rules
echo 'EXT_IP="Мой внешний ип"' >> $TMP/rules
echo 'INT=eth2' >> $TMP/rules
echo 'INT_IP="192.168.0.1"' >> $TMP/rules
echo 'INT_MSK="255.255.255.0"' >> $TMP/rules
echo 'LAN="192.168.0.0/24"' >> $TMP/rules
echo '' >> $TMP/rules
echo 'start_fw()' >> $TMP/rules
echo '{' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -F' >> $TMP/rules
echo '$IPT -t nat -F' >> $TMP/rules
echo '$IPT -t mangle -F' >> $TMP/rules
echo '$IPT -X' >> $TMP/rules
echo '$IPT -t nat -X' >> $TMP/rules
echo '$IPT -t mangle -X' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -P INPUT DROP' >> $TMP/rules
echo '$IPT -P OUTPUT DROP' >> $TMP/rules
echo '$IPT -P FORWARD DROP' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -i lo -j ACCEPT' >> $TMP/rules
echo '$IPT -A OUTPUT -o lo -j ACCEPT' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -i $INT -j ACCEPT' >> $TMP/rules
echo '$IPT -A OUTPUT -o $INT -j ACCEPT' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -m state --state INVALID -j DROP' >> $TMP/rules
echo '$IPT -A FORWARD -m state --state INVALID -j DROP' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -f -i $EXT -j DROP ' >> $TMP/rules
echo '#$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j LOG --log-prefix "ESTABILISHED " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT ' >> $TMP/rules
echo '' >> $TMP/rules
echo '# ICMP redirecting check && deny' >> $TMP/rules
echo '$IPT -A INPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-IN " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A INPUT --fragment -p ICMP -j DROP ' >> $TMP/rules
echo '$IPT -A OUTPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-OUT " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A OUTPUT --fragment -p ICMP -j DROP ' >> $TMP/rules
echo ' ' >> $TMP/rules
echo ' # ICMP types allow.' >> $TMP/rules
echo '$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type source-quench -j ACCEPT #--icmp-type source-quench' >> $TMP/rules
echo '$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type source-quench -j ACCEPT #--icmp-type source-quench' >> $TMP/rules
echo ' ' >> $TMP/rules
echo '# Allow outbounding ping & deny incoming ping.' >> $TMP/rules
echo '$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type echo-reply -j ACCEPT #--icmp-type echo-request ' >> $TMP/rules
echo '$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type echo-request -j ACCEPT # ' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j LOG --log-prefix "DNS " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j ACCEPT ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j LOG --log-prefix "DNS " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j ACCEPT ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j ACCEPT ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j ACCEPT' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p udp --dport 22 -m state --state NEW -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p udp --dport 22 -m state --state NEW -j ACCEPT' >> $TMP/rules
echo '' >> $TMP/rules
echo '#In traffic filtering' >> $TMP/rules
while read myline
do
echo "\$IPT -A INPUT -i \$EXT -p tcp -s $myline -m multiport --dports 80 -j LOG --log-prefix \"KG \" --log-tcp-options --log-ip-options" >> $TMP/rules
echo "\$IPT -A INPUT -i \$EXT -p tcp -s $myline -m multiport --dports 80 -j ACCEPT" >> $TMP/rules
done < $NETS
echo '' >> $TMP/rules
echo '#Out traffic filtering' >> $TMP/rules
while read myline
do
echo "\$IPT -A OUTPUT -d $myline -j LOG --log-prefix \"KG \" --log-tcp-options --log-ip-options" >> $TMP/rules
echo "\$IPT -A OUTPUT -d $myline -j ACCEPT" >> $TMP/rules
done < $NETS
echo '$IPT -A OUTPUT -o $EXT -p tcp -s $EXT_IP --dport 5190 --syn -m state --state NEW -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A OUTPUT -o $EXT -p tcp -s $EXT_IP --dport 5190 --syn -m state --state NEW -j ACCEPT' >> $TMP/rules
echo '$IPT -A OUTPUT -f -j LOG --log-prefix "DROPPED " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A OUTPUT -f -j DROP' >> $TMP/rules
echo '}' >> $TMP/rules
echo '' >> $TMP/rules
echo 'stop_fw()' >> $TMP/rules
echo '{' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -F' >> $TMP/rules
echo '$IPT -t nat -F' >> $TMP/rules
echo '$IPT -t mangle -F' >> $TMP/rules
echo '$IPT -X' >> $TMP/rules
echo '$IPT -t nat -X' >> $TMP/rules
echo '$IPT -t mangle -X' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -P INPUT DROP' >> $TMP/rules
echo '$IPT -P OUTPUT DROP' >> $TMP/rules
echo '$IPT -P FORWARD DROP' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -i lo -j ACCEPT' >> $TMP/rules
echo '$IPT -A OUTPUT -o lo -j ACCEPT' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -i $INT -j ACCEPT' >> $TMP/rules
echo '$IPT -A OUTPUT -o $INT -j ACCEPT' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -m state --state INVALID -j DROP' >> $TMP/rules
echo '$IPT -A FORWARD -m state --state INVALID -j DROP' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -f -i $EXT -j DROP ' >> $TMP/rules
echo '#$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j LOG --log-prefix "ESTABILISHED " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT ' >> $TMP/rules
echo '' >> $TMP/rules
echo '# ICMP redirecting check && deny' >> $TMP/rules
echo '$IPT -A INPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-IN " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A INPUT --fragment -p ICMP -j DROP ' >> $TMP/rules
echo '$IPT -A OUTPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-OUT " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A OUTPUT --fragment -p ICMP -j DROP ' >> $TMP/rules
echo ' ' >> $TMP/rules
echo ' # ICMP types allow.' >> $TMP/rules
echo '$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type source-quench -j ACCEPT #--icmp-type source-quench' >> $TMP/rules
echo '$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type source-quench -j ACCEPT #--icmp-type source-quench' >> $TMP/rules
echo ' ' >> $TMP/rules
echo '# Allow outbounding ping & deny incoming ping.' >> $TMP/rules
echo '$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type echo-reply -j ACCEPT #--icmp-type echo-request ' >> $TMP/rules
echo '$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type echo-request -j ACCEPT # ' >> $TMP/rules
echo '' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j LOG --log-prefix "DNS " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j ACCEPT ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j LOG --log-prefix "DNS " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j ACCEPT ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j ACCEPT ' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j ACCEPT' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p udp --dport 22 -m state --state NEW -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options' >> $TMP/rules
echo '$IPT -A INPUT -i $EXT -p udp --dport 22 -m state --state NEW -j ACCEPT' >> $TMP/rules
echo '' >> $TMP/rules
echo '#In traffic filtering' >> $TMP/rules
while read myline
do
echo "\$IPT -A INPUT -i \$EXT -p tcp -s $myline -m multiport --dports 80 -j LOG --log-prefix \"KG \" --log-tcp-options --log-ip-options" >> $TMP/rules
echo "\$IPT -A INPUT -i \$EXT -p tcp -s $myline -m multiport --dports 80 -j ACCEPT" >> $TMP/rules
done < $NETS
echo '' >> $TMP/rules
echo '}' >> $TMP/rules
echo '' >> $TMP/rules
echo 'case "$1" in' >> $TMP/rules
echo 'start) echo -n "Starting firewall: iptables"' >> $TMP/rules
echo ' start_fw' >> $TMP/rules
echo ' echo "." ' >> $TMP/rules
echo ' ;;' >> $TMP/rules
echo 'stop) echo -n "Stopping firewall: iptables"' >> $TMP/rules
echo ' stop_fw' >> $TMP/rules
echo ' echo "."' >> $TMP/rules
echo ' ;;' >> $TMP/rules
echo 'block) echo -n "Locking firewall: iptables"' >> $TMP/rules
echo ' $IPT -F' >> $TMP/rules
echo ' $IPT -X' >> $TMP/rules
echo ' $IPT -t nat -F' >> $TMP/rules
echo ' $IPT -P FORWARD DROP' >> $TMP/rules
echo ' $IPT -P INPUT DROP' >> $TMP/rules
echo ' $IPT -P OUTPUT DROP' >> $TMP/rules
echo ' $IPT -A INPUT -i lo -j ACCEPT' >> $TMP/rules
echo ' $IPT -A OUTPUT -o lo -j ACCEPT' >> $TMP/rules
echo ' echo "."' >> $TMP/rules
echo ' ;;' >> $TMP/rules
echo 'save) echo -n "Saving firewall: iptables"' >> $TMP/rules
echo ' iptables-save > /etc/rules-save' >> $TMP/rules
echo ' echo "."' >> $TMP/rules
echo ' ;; ' >> $TMP/rules
echo 'restart) echo -n "Restarting firewall: iptables"' >> $TMP/rules
echo ' iptables-save > /etc/rules-save' >> $TMP/rules
echo ' iptables -F' >> $TMP/rules
echo ' iptables -X' >> $TMP/rules
echo ' cat /etc/rules-save | iptables-restore' >> $TMP/rules
echo ' echo "."' >> $TMP/rules
echo ' ;;' >> $TMP/rules
echo 'reload|force-reload) echo -n "Reloading configuration files for firewall: iptables"' >> $TMP/rules
echo ' echo "."' >> $TMP/rules
echo ' ;;' >> $TMP/rules
echo '*) echo "Usage: /etc/init.d/rules start|stop|block|restart|reload|force-reload"' >> $TMP/rules
echo ' exit 1 ' >> $TMP/rules
echo ' ;;' >> $TMP/rules
echo 'esac' >> $TMP/rules
echo 'exit 0 ' >> $TMP/rules
chmod 0755 $TMP/rules
rm -f $INIT/rules.old
mv $INIT/rules $INIT/rules.old
cp $TMP/rules $INIT/rules
exec $INIT/rules start
В результате работы скрипта создается скрипт с правилами для фаервола, копируется в /etc/init.d, старый конфиг резервируется, а новый запускается. Сгенерированый набор правил получается следующий
Код: Выделить всё
#!/bin/sh
IPT=/sbin/iptables
EXT=eth0
EXT_IP="Мой внешний ип"
INT=eth2
INT_IP="192.168.0.1"
INT_MSK="255.255.255.0"
LAN="192.168.0.0/24"
start_fw()
{
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
$IPT -A INPUT -i $INT -j ACCEPT
$IPT -A OUTPUT -o $INT -j ACCEPT
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP
$IPT -A INPUT -f -i $EXT -j DROP
#$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j LOG --log-prefix "ESTABILISHED " --log-tcp-options --log-ip-options
$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# ICMP redirecting check && deny
$IPT -A INPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-IN " --log-tcp-options --log-ip-options
$IPT -A INPUT --fragment -p ICMP -j DROP
$IPT -A OUTPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-OUT " --log-tcp-options --log-ip-options
$IPT -A OUTPUT --fragment -p ICMP -j DROP
# ICMP types allow.
$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type source-quench -j ACCEPT #--icmp-type source-quench
$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type source-quench -j ACCEPT #--icmp-type source-quench
# Allow outbounding ping & deny incoming ping.
$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type echo-reply -j ACCEPT #--icmp-type echo-request
$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type echo-request -j ACCEPT #
$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j LOG --log-prefix "DNS " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j LOG --log-prefix "DNS " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j ACCEPT
$IPT -A INPUT -i $EXT -p udp --dport 22 -m state --state NEW -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p udp --dport 22 -m state --state NEW -j ACCEPT
#In traffic filtering
$IPT -A INPUT -i $EXT -p tcp -s 89.237.192.0/18 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 89.237.192.0/18 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 81.20.16.0/20 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 81.20.16.0/20 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.152.37.0/24 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 194.152.37.0/24 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.112.96.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.112.96.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 92.245.96.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 92.245.96.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 92.62.64.0/20 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 92.62.64.0/20 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 77.95.56.0/21 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 77.95.56.0/21 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.97.0.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.97.0.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.2.224.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.2.224.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.205.48.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 91.205.48.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 109.201.160.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 109.201.160.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 81.88.192.0/20 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 81.88.192.0/20 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 193.106.48.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 193.106.48.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 94.143.192.0/21 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 94.143.192.0/21 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 217.29.16.0/20 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 217.29.16.0/20 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.241.0.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.241.0.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.213.233.0/24 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 91.213.233.0/24 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.113.0.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 85.113.0.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 195.38.160.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 195.38.160.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 109.71.224.0/21 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 109.71.224.0/21 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.42.96.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.42.96.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.176.111.0/24 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 194.176.111.0/24 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.115.192.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 85.115.192.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 77.235.0.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 77.235.0.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.152.36.0/24 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 194.152.36.0/24 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 95.215.244.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 95.215.244.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.26.220.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 85.26.220.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.192.64.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 91.192.64.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 213.145.128.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 213.145.128.0/19 -m multiport --dports 80 -j ACCEPT
#Out traffic filtering
$IPT -A OUTPUT -d 89.237.192.0/18 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 89.237.192.0/18 -j ACCEPT
$IPT -A OUTPUT -d 81.20.16.0/20 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 81.20.16.0/20 -j ACCEPT
$IPT -A OUTPUT -d 194.152.37.0/24 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 194.152.37.0/24 -j ACCEPT
$IPT -A OUTPUT -d 212.112.96.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 212.112.96.0/19 -j ACCEPT
$IPT -A OUTPUT -d 92.245.96.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 92.245.96.0/19 -j ACCEPT
$IPT -A OUTPUT -d 92.62.64.0/20 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 92.62.64.0/20 -j ACCEPT
$IPT -A OUTPUT -d 77.95.56.0/21 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 77.95.56.0/21 -j ACCEPT
$IPT -A OUTPUT -d 212.97.0.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 212.97.0.0/19 -j ACCEPT
$IPT -A OUTPUT -d 212.2.224.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 212.2.224.0/19 -j ACCEPT
$IPT -A OUTPUT -d 91.205.48.0/22 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 91.205.48.0/22 -j ACCEPT
$IPT -A OUTPUT -d 109.201.160.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 109.201.160.0/19 -j ACCEPT
$IPT -A OUTPUT -d 81.88.192.0/20 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 81.88.192.0/20 -j ACCEPT
$IPT -A OUTPUT -d 193.106.48.0/22 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 193.106.48.0/22 -j ACCEPT
$IPT -A OUTPUT -d 94.143.192.0/21 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 94.143.192.0/21 -j ACCEPT
$IPT -A OUTPUT -d 217.29.16.0/20 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 217.29.16.0/20 -j ACCEPT
$IPT -A OUTPUT -d 212.241.0.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 212.241.0.0/19 -j ACCEPT
$IPT -A OUTPUT -d 91.213.233.0/24 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 91.213.233.0/24 -j ACCEPT
$IPT -A OUTPUT -d 85.113.0.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 85.113.0.0/19 -j ACCEPT
$IPT -A OUTPUT -d 195.38.160.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 195.38.160.0/19 -j ACCEPT
$IPT -A OUTPUT -d 109.71.224.0/21 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 109.71.224.0/21 -j ACCEPT
$IPT -A OUTPUT -d 212.42.96.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 212.42.96.0/19 -j ACCEPT
$IPT -A OUTPUT -d 194.176.111.0/24 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 194.176.111.0/24 -j ACCEPT
$IPT -A OUTPUT -d 85.115.192.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 85.115.192.0/19 -j ACCEPT
$IPT -A OUTPUT -d 77.235.0.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 77.235.0.0/19 -j ACCEPT
$IPT -A OUTPUT -d 194.152.36.0/24 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 194.152.36.0/24 -j ACCEPT
$IPT -A OUTPUT -d 95.215.244.0/22 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 95.215.244.0/22 -j ACCEPT
$IPT -A OUTPUT -d 85.26.220.0/22 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 85.26.220.0/22 -j ACCEPT
$IPT -A OUTPUT -d 91.192.64.0/22 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 91.192.64.0/22 -j ACCEPT
$IPT -A OUTPUT -d 213.145.128.0/19 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -d 213.145.128.0/19 -j ACCEPT
$IPT -A OUTPUT -o $EXT -p tcp -s $EXT_IP --dport 5190 --syn -m state --state NEW -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -o $EXT -p tcp -s $EXT_IP --dport 5190 --syn -m state --state NEW -j ACCEPT
$IPT -A OUTPUT -f -j LOG --log-prefix "DROPPED " --log-tcp-options --log-ip-options
$IPT -A OUTPUT -f -j DROP
}
stop_fw()
{
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
$IPT -A INPUT -i $INT -j ACCEPT
$IPT -A OUTPUT -o $INT -j ACCEPT
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP
$IPT -A INPUT -f -i $EXT -j DROP
#$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j LOG --log-prefix "ESTABILISHED " --log-tcp-options --log-ip-options
$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# ICMP redirecting check && deny
$IPT -A INPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-IN " --log-tcp-options --log-ip-options
$IPT -A INPUT --fragment -p ICMP -j DROP
$IPT -A OUTPUT --fragment -p ICMP -j LOG --log-prefix "FRAG-ICMP-OUT " --log-tcp-options --log-ip-options
$IPT -A OUTPUT --fragment -p ICMP -j DROP
# ICMP types allow.
$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type source-quench -j ACCEPT #--icmp-type source-quench
$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type source-quench -j ACCEPT #--icmp-type source-quench
# Allow outbounding ping & deny incoming ping.
$IPT -A INPUT -p icmp -m icmp -i $EXT --icmp-type echo-reply -j ACCEPT #--icmp-type echo-request
$IPT -A OUTPUT -p icmp -m icmp -o $EXT --icmp-type echo-request -j ACCEPT #
$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j LOG --log-prefix "DNS " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p udp -m udp --dport 53 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j LOG --log-prefix "DNS " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 53 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -m tcp --dport 22 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp --dport 22 --syn -m state --state NEW -j ACCEPT
$IPT -A INPUT -i $EXT -p udp --dport 22 -m state --state NEW -j LOG --log-prefix "SSHD " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p udp --dport 22 -m state --state NEW -j ACCEPT
#In traffic filtering
$IPT -A INPUT -i $EXT -p tcp -s 89.237.192.0/18 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 89.237.192.0/18 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 81.20.16.0/20 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 81.20.16.0/20 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.152.37.0/24 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 194.152.37.0/24 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.112.96.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.112.96.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 92.245.96.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 92.245.96.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 92.62.64.0/20 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 92.62.64.0/20 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 77.95.56.0/21 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 77.95.56.0/21 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.97.0.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.97.0.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.2.224.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.2.224.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.205.48.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 91.205.48.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 109.201.160.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 109.201.160.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 81.88.192.0/20 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 81.88.192.0/20 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 193.106.48.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 193.106.48.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 94.143.192.0/21 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 94.143.192.0/21 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 217.29.16.0/20 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 217.29.16.0/20 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.241.0.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.241.0.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.213.233.0/24 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 91.213.233.0/24 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.113.0.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 85.113.0.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 195.38.160.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 195.38.160.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 109.71.224.0/21 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 109.71.224.0/21 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 212.42.96.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 212.42.96.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.176.111.0/24 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 194.176.111.0/24 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.115.192.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 85.115.192.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 77.235.0.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 77.235.0.0/19 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 194.152.36.0/24 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 194.152.36.0/24 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 95.215.244.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 95.215.244.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 85.26.220.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 85.26.220.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 91.192.64.0/22 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 91.192.64.0/22 -m multiport --dports 80 -j ACCEPT
$IPT -A INPUT -i $EXT -p tcp -s 213.145.128.0/19 -m multiport --dports 80 -j LOG --log-prefix "KG " --log-tcp-options --log-ip-options
$IPT -A INPUT -i $EXT -p tcp -s 213.145.128.0/19 -m multiport --dports 80 -j ACCEPT
}
case "$1" in
start) echo -n "Starting firewall: iptables"
start_fw
echo "."
;;
stop) echo -n "Stopping firewall: iptables"
stop_fw
echo "."
;;
block) echo -n "Locking firewall: iptables"
$IPT -F
$IPT -X
$IPT -t nat -F
$IPT -P FORWARD DROP
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
echo "."
;;
save) echo -n "Saving firewall: iptables"
iptables-save > /etc/rules-save
echo "."
;;
restart) echo -n "Restarting firewall: iptables"
iptables-save > /etc/rules-save
iptables -F
iptables -X
cat /etc/rules-save | iptables-restore
echo "."
;;
reload|force-reload) echo -n "Reloading configuration files for firewall: iptables"
echo "."
;;
*) echo "Usage: /etc/init.d/rules start|stop|block|restart|reload|force-reload"
exit 1
;;
esac
exit 0
Я не злопамятный, я просто часто ковыряю логи