Você pode adicionar suas próprias regras de rastreamento (usando a porta tcp não utilizada, por exemplo):
for table in $(</proc/net/ip_tables_names);do while
read dsc nam foo ;do
if [ "$dsc" == "Chain" ];then
iptables -t $table -I $nam -p tcp --dport 8 -j LOG --log-prefix "start-${table}-${nam} "
iptables -t $table -A $nam -p tcp --dport 8 -j LOG --log-prefix "end-${table}-${nam} "
fi
done < <(iptables -n -t $table -L)
done
Quando as regras estiverem prontas, você poderá fazer uma conexão de outro lugar:
nc 192.168.1.31 8
(UNKNOWN) [192.168.1.31] 8 (?) : Connection refused
Então, dê uma olhada no seu kern.log
:
Dec 22 12:15:33 localhost kernel: [4237698.275654] start-nat-PREROUTING IN=br0 OUT= PHYSIN=eth0 MAC=01...
Dec 22 12:15:33 localhost kernel: [4237698.275662] end-nat-PREROUTING IN=br0 OUT= PHYSIN=eth0 MAC=01...
Dec 22 12:15:33 localhost kernel: [4237698.275674] start-filter-INPUT IN=br0 OUT= PHYSIN=eth0 MAC=01...
Dec 22 12:15:33 localhost kernel: [4237698.275681] end-filter-INPUT IN=br0 OUT= PHYSIN=eth0 MAC=01...
Dec 22 12:15:33 localhost kernel: [4237698.275688] start-nat-INPUT IN=br0 OUT= PHYSIN=eth0 MAC=01...
Dec 22 12:15:33 localhost kernel: [4237698.275695] end-nat-INPUT IN=br0 OUT= PHYSIN=eth0 MAC=01...
Estas regras de teste podem ser removidas simplesmente:
iptables-save |
sed -ne '/^\*/{s/^.//;h;};
/dport 8 -j LOG/{G;s/^-A\(.*\)\n\(.*\)$/iptables -t -D/;p}
' | sh