Desfazer modificação do iptables

9

Executei os seguintes iptablescomandos para criar uma regra de lista negra, mas usei a porta errada:

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j ULOG --ulog-prefix SSH_brute_force
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP

Como posso desfazer o exposto acima e depois refazê-lo para uma porta diferente?

Dan
fonte

Respostas:

12

use iptables -D ... para excluir as entradas.

iptables -D INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -D INPUT -p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST
iptables -D INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j ULOG --ulog-prefix SSH_brute_force
iptables -D INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP
Bonsi Scott
fonte
6

Execute os mesmos comandos com em -Dvez de -A.

Como alternativa, se você deseja redefinir completamente as tabelas de ip, lave tudo com iptables -F.

gertvdijk
fonte
1
Eu executei o iptables -F e agora meu servidor está inacessível. O iptables -F parece ser um pouco diferente do ufw reset.
don brilhante
5

Contanto que você não tenha executado o iptables savecomando, tudo o que você precisa fazer é reiniciar ou recarregar o serviço iptables. Ou você pode fazer o que Bonsi Scott disse e excluir as regras - com uma ressalva. Primeira corrida:

#iptables -L -n -v --line-numbers

para obter o número da regra, tudo o que você precisa fazer é excluir a regra pelo número com:

#iptables -D INPUT <rule number>
midnightsteel
fonte