iptables (regra relacionada estabelecida)

2

Gostaria de saber o que a seguinte regra do iptables faz exatamente? Por que é necessário?

ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    
por Sangfroid 20.10.2011 / 17:00

2 respostas

3

O estado ESTABLISTED permitirá que todos os pacotes que fazem parte de uma conexão existente passem. O estado RELATED permite que sejam feitas novas conexões secundárias relacionadas a uma conexão existente. Isso permitiria, por exemplo, uma transferência de dados por FTP em que a conexão de controle estivesse na porta 21 e a porta de dados fosse negociada pelo protocolo.

    
por 20.10.2011 / 17:34
3

É um pouco mais complexo do que alguns dos comentários acima sugerem.

state ESTABLISHED significa "uma vez que a conexão é aberta, deixe passar o restante dos pacotes", embora deva ser notado que "conexão" é definida por sincronicidade: pacotes viajando entre um par endereço / porta conhecido e outro par de endereço / porta conhecidos são definidos como "ESTABLISHED". O famoso handshake TCP de três vias não entra nele.

state RELATED parece ser carregado por muitas pessoas sem realmente entender o que faz. Geralmente inclui tráfego ICMP relacionado a uma conexão existente (tentativa), como pacotes ICMP-host-administratively-unreachable retornando de um firewall que está bloqueando sua solicitação de conexão para uma caixa proibida.

Mas há também um grupo de módulos do kernel, como nf_conntrack_ftp , que expandem dinamicamente a definição de RELATED tráfego conforme são carregados (aquele em particular executa a análise da camada 4 do tráfego do canal de controle do ftp, parece para declarações de dados que avisam sobre a abertura iminente de um canal de dados, e corresponde a esses pacotes quando eles chegam).

A menos que você saiba que precisa, recomendo que não permita genericamente o tráfego RELATED , mas restringindo as declarações RELATED ao tráfego que você sabe que deseja, por exemplo, -p icmp .

    
por 20.10.2011 / 17:36