Pacotes sendo bloqueados pelo iptables na porta 22

2

Estou percebendo alguns pacotes bloqueados no meu log do iptables ao executar uma biblioteca python que chama paramiko. Notei os pacotes bloqueados ao tentar descobrir por que há um desempenho de rede inconsistente com essa biblioteca quando o iptables está em execução. Basicamente, o servidor (10.0.12.206 no log abaixo) executa a biblioteca que usa paramiko para executar comandos com segurança no cliente (10.0.10.103 no log abaixo) na porta 22. Quando o cliente está executando o iptables permissivo, ele funciona bem bem. Quando o cliente executa o iptables com as regras abaixo, geralmente há interrupções indefinidas, e eu suspeito que isso pode ser devido a alguns pacotes sendo bloqueados pelo iptables em execução no cliente, uma vez que esses pacotes aparecem apenas no log quando a biblioteca está em execução. / p>

Estas são as regras do meu iptables -

-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP

-A INPUT -i lo -j -ACCEPT
-A OUTPUT -o lo -j -ACCEPT

-A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -o eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT

-A OUTPUT -o eth0 -p udp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT

-A INPUT -m state --state ESTABLISHED,RELATED -j -ACCEPT
-A OUTPUT -m state --state ESTABLISHED,RELATED -j -ACCEPT

-A INPUT -j LOG --log-prefix "IPtables DROP DEFAULT IN: " 
-A OUTPUT -j LOG --log-prefix "IPtables DROP DEFAULT OUT: " 

-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP

Estas são as mensagens usuais no log do cliente -

Oct  7 16:43:08 ip-10-0-10-103 kernel: IPtables DROP DEFAULT IN: IN=eth0 OUT= MAC=<withheld> SRC=10.0.12.206 DST=10.0.10.103 LEN=52 TOS=0x00 PREC=0x00 TTL=64 ID=18436 DF PROTO=TCP SPT=58634 DPT=22 WINDOW=523 RES=0x00 ACK FIN URGP=0

Oct  7 16:44:14 ip-10-0-10-103 kernel: IPtables DROP DEFAULT OUT: IN= OUT=eth0 SRC=10.0.10.103 DST=10.0.12.206 LEN=260 TOS=0x00 PREC=0x00 TTL=64 ID=57627 DF PROTO=TCP SPT=22 DPT=58634 WINDOW=240 RES=0x00 ACK PSH URGP=0

Gostaria de ver se esses pacotes bloqueados estão causando o problema. Como eu permito que esses pacotes bloqueados passem? Eu tentei algumas regras, mas não tive sorte, por exemplo.

-A OUTPUT -o eth0 -p tcp --tcp-flags ALL ACK,PSH,URG -j ACCEPT
    
por hotkarl 07.10.2016 / 20:34

1 resposta

2

Acho que o problema é que você está permitindo OUTPUT à porta 22, mas ela deve estar vindo da porta 22:

-A OUTPUT -o eth0 -p tcp --sport 22 -m state --state NEW,ESTABLISHED -j ACCEPT

Isso deve corrigir a segunda linha de registro que você postou. Eu não tenho certeza porque o primeiro pacote que você logou está sendo capturado. Você pode verificar o iptables -nvL e certificar-se de que essas regras estejam realmente sendo aplicadas?

    
por 07.10.2016 / 21:42

Tags