ufw & iptables confusion

1

Eu adicionei anteriormente algumas regras do netfilter via iptables. Agora eu gostaria de gerenciar essas regras através do ufw e simplificar as coisas que eu queria me livrar das regras atuais e começar de novo como se eu estivesse usando o ufw desde o início.

Corri sudo iptables --flush para remover todas as regras atuais e, em seguida, sudo ufw allow 22 para permitir ssh e sudo ufw enable . Eu fui então expulso da minha sessão ssh, então a regra claramente não funcionou.

Eu me conectei de volta com uma sessão de console e comparei sudo iptables -L -v a um servidor diferente que estava trabalhando com o ufw e notei que a cadeia INPUT superior neste servidor estava vazia, enquanto o servidor em funcionamento tinha:

Chain INPUT (policy DROP 77 packets, 3613 bytes)
 pkts bytes target     prot opt in     out     source               destination         
 3842  682K ufw-before-logging-input  all  --  any    any     anywhere             anywhere            
 3842  682K ufw-before-input  all  --  any    any     anywhere             anywhere            
  422 32270 ufw-after-input  all  --  any    any     anywhere             anywhere            
  422 32270 ufw-after-logging-input  all  --  any    any     anywhere             anywhere            
  422 32270 ufw-reject-input  all  --  any    any     anywhere             anywhere            
  422 32270 ufw-track-input  all  --  any    any     anywhere             anywhere 

Parece que o flush limpou algumas regras padrão que haviam sido aplicadas à cadeia INPUT. Essa é uma suposição correta? Se sim, a) como faço para reparar a situação e b) como faço esse processo corretamente?

    
por Mike Campbell 07.04.2016 / 19:34

1 resposta

1

Descobri que minha suspeita estava correta e sudo iptables --flush havia eliminado as regras da cadeia INPUT da ufw, que chamavam de suas próprias cadeias personalizadas. Por alguma razão (ainda desconhecido para mim), o ufw não estava colocando isso de volta quando foi ativado.

Para fazer com que o ufw volte a colocar essas regras, eu tive que remover todas as cadeias ufw do iptables, e então habilitar o ufw. Eu fiz assim:

sudo iptables -X ufw-after-forward
sudo iptables -X ufw-after-input
sudo iptables -X ufw-after-logging-forward
sudo iptables -X ufw-after-logging-input
sudo iptables -X ufw-after-logging-output
sudo iptables -X ufw-after-output
sudo iptables -X ufw-before-forward
sudo iptables -X ufw-before-input
sudo iptables -X ufw-before-logging-forward
sudo iptables -X ufw-before-logging-input
sudo iptables -X ufw-before-logging-output
sudo iptables -X ufw-before-output
sudo iptables -X ufw-reject-forward
sudo iptables -X ufw-reject-input
sudo iptables -X ufw-reject-output
sudo iptables -X ufw-track-input
sudo iptables -X ufw-track-output

Quando habilitei o ufw depois disso, configurei o iptables corretamente.

    
por 08.04.2016 / 14:46