Esta é a maioria dos comandos abrangentes para redefinir completamente o seu iptables?

1

Eu estou executando um VPS e gostaria de redefinir as regras do iptables para o seu recém-out-of-the-box Estado padrão. Estes são os comandos que eu criei:

#!/bin/sh
echo "Resetting all iptables rules..."

#Reset default table policies
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

#Reset nat table policies
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P INPUT ACCEPT
iptables -t nat -P OUTPUT ACCEPT

#Reset mangle table policies
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P POSTROUTING ACCEPT
iptables -t mangle -P INPUT ACCEPT
iptables -t mangle -P OUTPUT ACCEPT 
iptables -t mangle -P FORWARD ACCEPT

#Reset raw table policies
iptables -t raw -P PREROUTING ACCEPT
iptables -t raw -P OUTPUT ACCEPT

#Flush all rules and delete empty chains
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -t raw -F
iptables -t raw -X

PERGUNTAS:

  1. Essas regras são suficientemente abrangentes? Eu mexi com o meu iptables e eu só quero começar de uma ardósia limpa.

  2. Eu serei bloqueado do meu VPS se eu reiniciar?

  3. Preciso usar o comando -Z em todas as tabelas para zerar os contadores de pacotes e bytes em todas as regras de uma cadeia? Por exemplo. "iptables -t nat -Z" (e repete o mesmo para todas as outras tabelas)?

Obrigado!

    
por Honey Badger 18.04.2013 / 13:06

1 resposta

3
  1. Eu acho que eles são muito bons; Eu não consigo pensar em nenhuma regra que escape dessa poda.

  2. Depende. Quais são seus arranjos atuais para regras de reinicialização? Se eles somam DROPping tudo, então sim, você vai se trancar. O script que você mostrou acima é adorável (veja 1.), mas não será executado magicamente na reinicialização.

  3. Depende se você deseja que os contadores sejam zerados ou não.

Quanto a não ficar bloqueado, eu concordo com pauska que fazer um trabalho de firewall remoto pode ser complicado. É por isso que, antes de eu fazer qualquer alteração que eu fiz nos firewalls de um sistema remoto, eu faço

# at now+5min
at> service iptables stop
at> ^D

Se as alterações que eu fizer então me trancarem, bem, eu estarei pronto para voltar dentro de cinco minutos. Se não, eu posso usar atrm para remover o trabalho que acabei de enviar. Salvou meu bumbum algumas vezes! (NB: que o comando service é bom para o Red Hat Linuces, você pode precisar encontrar um equivalente para outros unices.)

    
por 18.04.2013 / 13:54