Por que as regras do iptables desaparecem quando eu reinicio meu sistema Debian?

36

Eu adiciono esta regra:

sudo iptables -t nat -A OUTPUT -d a.b.c.d -p tcp \
       --dport 1723 -j DNAT --to-destination a.b.c.d:10000
  1. Quando reiniciar, as regras do computador serão excluídas. Por quê?
  2. O que posso fazer para que as regras persistam?
por Jhonathan 19.10.2012 / 23:36

2 respostas

31

Não há opção no iptables que torne suas regras permanentes. Mas você pode usar iptables-save e iptables-restore para cumprir sua tarefa.

Primeiro adicione a regra iptable usando o comando que você deu.

Em seguida, salve as regras do iptables em algum arquivo como /etc/iptables.conf usando o seguinte comando:

$  iptables-save > /etc/iptables.conf

Adicione o seguinte comando em /etc/rc.local para recarregar as regras em cada reinicialização.

$  iptables-restore < /etc/iptables.conf
    
por 20.10.2012 / 00:01
42

(porque foi sugerido que isso fizesse uma resposta por si mesmo ...)

No debian, instale iptables-persistent .

O pacote carregará automaticamente /etc/iptables/rules durante a inicialização.

Sempre que você modificar suas regras, execute /sbin/iptables-save > /etc/iptables/rules para salvá-las. Você também pode adicionar isso à sequência de desligamento, se quiser.

    
por 22.10.2012 / 03:51