Iptables causando travamento do ssh?

Iptables causando travamento do ssh?

Tenho um servidor executando várias VMs por meio de duas pontes e quero proteger o host por meio de iptables.

Portanto, tenho os padrões para IN/OUTPUT: drop e FORWARD: accept, e algumas regras IN/OUTPUT para me permitir acesso ssh.

Agora, o problema com esta configuração é que as sessões ssh aparentemente congelam quando um comando produz algumas linhas de saída. Por exemplo, datefunciona, mas iptables -Lou topficará suspenso no meio da saída. Posso encerrar a sessão com ~., fazer login novamente, definir o iptables de volta ao padrão e tudo funciona novamente.

Além disso, depois de definir as regras do iptables, demora um pouco até que o problema surja. Não consegui determinar o prazo exato, acho que foi entre 5 e 20 minutos.

Alguma idéia do que poderia causar tal problema ou como alguém poderia diagnosticá-lo?

Responder1

Tente executar iptables -L -n(adicione a opção -n). A resolução de nomes pode fazer com que o iptables -L trave.

Responder2

Você está bloqueando completamente o ICMP? Se sim, você pode ter criado umBuraco negro PMTU.

Responder3

Você tem uma regra iptable para permitir a passagem do tráfego estabelecido?

iptables -A OUTPUT -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

Também vi esse problema devido a um horizonte dividido na rede, mas isso não parece ser o seu problema, pois o problema desaparece quando você remove as regras do iptable

Responder4

Este poderia ser um problema de buraco negro da MTU.

MTU é a unidade máxima de transmissão; qual o tamanho do pacote que cada lado pode suportar. O padrão da Ethernet é 1.500 bytes, mas essa não é de longe a única possibilidade.

comandos curtos funcionam porque estão abaixo dos dois tamanhos de MTU. Os mais longos não o fazem porque não são.

Se ambas as extremidades da conexão não estiverem usando o mesmo MTU, ou se a rede intermediária tiver um MTU menor, seus sistemas precisarão descobrir isso de alguma forma; o processo é denominado Path MTU Discovery.

A maneira como isso acontece é com mensagens ICMP. Se você está bloqueando todo o ICMP, bem, você está bloqueando coisas úteis.

Mais informações aqui:Por que não bloquear o ICMP?

Observe também que se a rede de MTU pequena no meio for a camada 2 (por exemplo, as pontes que você configurou), a descoberta de MTU de caminho não funcionará; os pacotes serão descartados e aparecerão como erros no switch/ponte e/ou nas interfaces Ethernet.

informação relacionada