Настройка iptables в Debian 8

На свежеустановленном сервере iptables в debian 8 правил нет, весь трафик полностью разрешен ACCEPT.
Первым делом устанавливаем пакет iptables-persistent. Делается это следующим образом:
- Обновляем список пакетов apt-get update
- Устанавливаем сам пакет apt-get install iptables-persistent
Этот пакет нам нужен для того чтобы после перезагрузки сервера созданные правила iptables восстанавливались.
Правила хранятся в каталоге /etc/iptables, в этом каталоге есть 2 файла
- rules.v4 — Для IPV4
- rules.v6 — Для IPV6
Будем действовать по принципу — запрещено все, кроме того, что явно разрешено.
# Generated by iptables-save v1.4.21 on Thu Feb 18 11:07:36 2016
*filter
: INPUT DROP [52:4949]
: FORWARD ACCEPT [0:0]
: OUTPUT ACCEPT [116:16277]
-A INPUT -i eth0 -p icmp -m icmp --icmp-type 8 -j DROP
-A INPUT -p icmp -m icmp --icmp-type 17 -j DROP
-A INPUT -p icmp -m icmp --icmp-type 13 -j DROP
-A INPUT -p icmp -m icmp --icmp-type 17 -j DROP
-A INPUT -m state --state INVALID -j DROP
-A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/sec --limit-burst 2 -j ACCEPT
-A INPUT -m recent --rcheck --seconds 86400 --name portscan --mask 255.255.255.255 --rsource -j DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit --limit 1/sec -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
-A INPUT -i tun+ -j ACCEPT
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -m recent --rcheck --seconds 86400 --name portscan --mask 255.255.255.255 --rsource -j DROP
-A FORWARD -i tun+ -j ACCEPT
-A FORWARD -i tun+ -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o tun+ -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -m state --state INVALID -j DROP
-A OUTPUT -o tun+ -j ACCEPT
COMMIT
# Completed on Thu Feb 18 11:07:36 2016
Если вдруг какие то правила меняются надо обязательно сделать ipables-save > /etc/iptables/rules.v4 иначе после перезагрузки сервера правила очищаются.
Восстановить правила можно командой iptables-restore < /etc/iptables/rules.v4
Автор статьи: Андрей Гаркин
Благодарность за статью 100 рублей.