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