Назад | Перейти на главную страницу

Правила iptables исчезают при добавлении правила nat в постоянный файл iptables вручную

Я заметил, что около двух третей правил, которые я указал в /etc/iptables/rules.v4 перестал показываться в sudo iptables -S после того, как я добавил nat правило. (Я изолировал исчезновение до добавления этого правила.) У меня установлены fail2ban и iptables-persistent. Куда идут мои правила iptables?

/etc/iptables/rules.v4

# Generated by iptables-save v1.6.0 on Sat Feb 10 14:34:17 2018
*filter
:INPUT DROP [1858:197791]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [2564:302408]
-A INPUT -p tcp --match multiport --dports 22:23 -j ACCEPT
-A INPUT -p tcp --match multiport --dports 50000:50999 -j ACCEPT
-A INPUT -p udp --match multiport --dports 120:121 -s 999.999.999.999 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 122 -s 999.999.999.999 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 123 -s 999.999.999.999 -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p udp -m udp --sport 53 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -i veth0 -o eth0 -j ACCEPT
-A FORWARD -i eth0 -o veth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
-t nat -A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Sat Feb 10 14:34:17 2018

sudo iptables -S

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-N f2b-sshd
-N f2b-vsftpd-iptables
-A INPUT -p tcp -m multiport --dports 23 -j f2b-vsftpd-iptables
-A INPUT -p tcp -m multiport --dports 22 -j f2b-sshd
-A f2b-sshd -j RETURN
-A f2b-vsftpd-iptables -j RETURN

У вас есть ': INPUT DROP' в rules.v4 и '-P INPUT ACCEPT' в sudo iptables -S вывод. Выглядит слишком иначе, как будто вы забыли перенастроить пакет iptables-persistent после изменения правил.

Реконфигурация iptables-постоянный необходимо после каждого изменения правил командой:

sudo dpkg-reconfigure iptables-persistent

Предлагаю три шага: 1). Четкие правила.

# delete all current rules and user chains
iptables -F
iptables -X

# global policy (target by default)
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

# localhost
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

2). Определите свои правила снова. 3). Перенастройте iptables-persistent.