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

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

Я заметил, что около двух третей правил, которые я указал, /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

решение1

У вас есть ':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.

Связанный контент