aplica back firewall após o iptables flush

1

ontem eu me tranquei no meu próprio servidor. e do que eu tento descarregar iptables de outro servidor para obtê-lo desbloqueado como esta resposta à pergunta 3 vezes falharem bloqueio

Depois disso, não consigo fazer login no servidor. peço apoio do serviço ao cliente e finalmente posso fazer o login como antes.

ele (serviço ao cliente) reinicia o servidor e executa iptables -A INPUT -p tcp --dport 22 -j ACCEPT e desliga o firewall.

e agora eu quero o firewall de volta como antes que ele corasse.

é possível fazer isso? e como fazer isso?

eu li de outro fórum, eles disseram com apenas reiniciar a máquina que a tabela ip irá restaurar para o estado anterior. está certo?

    
por Jeg Bagus 01.04.2011 / 08:40

4 respostas

2

O firewall, conforme configurado pelo iptables, é ephermal. Ele nunca é salvo e deve ser recarregado em cada inicialização. Normalmente existe um script no init.d que carrega as regras do iptables na inicialização. Ao liberar as regras com iptables -F, isso apenas libera o que o Kernel sabia, mas não afeta como o firewall será configurado na próxima inicialização. Toda distribuição é diferente. O Fedora usa um script init.d chamado /etc/init.d/iptables que apenas executa o iptables-restore / etc / sysconfig / iptables ou algo parecido. O Ubuntu usa o ufw, que chama uma série de comandos iptables baseados na configuração local. Se tudo que você fez foi executar os comandos do iptables e não armazenar nada em um arquivo, então a reinicialização deve restaurar o firewall. Se você souber qual script init.d, provavelmente poderá recarregar esse script para restaurar em vez de uma reinicialização completa.

    
por 01.04.2011 / 08:53
1

Não pode ter sido salvo antes do seu rubor? link ?

+ = Se não, é quase impossível, a menos que existam alguns arquivos de disco perdidos com regras fw dentro.

    
por 01.04.2011 / 08:46
1

No Ubuntu a partir de 12.04, a configuração do iptables é permanentemente armazenada em / etc / default / iptables-rules

Você deve verificar se as regras iptables salvas ainda contêm suas regras e copiar o arquivo antes de parar o serviço iptables ou ter um backup desse arquivo pronto.

  1. Então você para o serviço iptables: %código%
  2. restaure o arquivo iptables-rules em / etc / default %código%
  3. e inicie o serviço iptables %código%
por 01.07.2014 / 09:57
1

Acho que tudo depende de como as regras do iptables são definidas antes de você fazer o flush. Quero dizer as políticas padrão de suas cadeias INPUT, OUTPUT e FORWARD.

Portanto, para ter certeza de que você não ficará bloqueado ao liberar as regras do iptables, primeiro certifique-se de que as políticas padrão de suas cadeias estejam completamente abertas. Assim:

iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -P OUTPUT ACCEPT

E só então você pode liberar suas regras com segurança:

iptables -F

Isso funcionará se o seu problema é que as políticas padrão de suas cadeias eram diferentes de ACCEPT.

É claro que, antes de liberá-los, você deve fazer um backup das suas regras em um arquivo:

iptables-save > /route/to/file.anyextension

Depois do teste, você pode restaurar suas regras antigas:

iptables-restore < route/to/file.anyextension

Se você adicionar ou excluir uma regra e quiser que ela seja permanente (para que ela se mantenha mesmo se você reiniciar), você terá que fazer coisas diferentes dependendo da sua distribuição.

    
por 24.04.2015 / 13:41