iptables -A FORWARD -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# LOG rede internet porta 25
iptables -A FORWARD -p tcp --dport 25 -j LOG --log-prefix '** PORTA 25 **'
iptables -A FORWARD -p udp --dport 25 -j LOG --log-prefix '** PORTA 25 **'
# portas liberadas
PORTAS="22 80 443 587 2222 8080 3389"
for i in $PORTAS
do
iptables -A FORWARD -s $NET_INTRA -i $INTRA -o $INTER1 -p tcp --dport $i -j ACCEPT
done
Era esse trecho que eu queria ver.
Em primeiro lugar, a tua primeira linha ("-A FORWARD -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT") tá errada. Quando vc aceita conexões novas, pré-estabelecidas e relacionadas, não sobra mais nada pra aceitar --- exceto, talvez, as inválidas, que vc não iria querer aceitar mesmo. Isso faz com que as linhas seguintes se tornem inúteis, todos os pacotes vão ser aceitos aqui, e não nas linhas seguintes.
Minha sugestão: retire o "NEW" dessa linha, e deixe que as conexões sejam liberadas conforme sua necessidade.
O trecho final (o loop [í]for[/i] onde vc cria várias regras) também pode ser substituído por uma única linha:
iptables -A FORWARD -s $NET_INTRA -i $INTRA -o $INTER1 -p tcp -m multiport --dport 22,80,443,587,2222,8080,3389 -j ACCEPT
Essa mudança não vai impactar no funcionamento do firewall, só no "estilo". Assim, vc só deve fazer a mudança da regra lá em cima.
Depois de corrigir aquele estado "NEW" desnecessário, acompanhe o log do firewall, pra ver qual é a máquina que está gerando essas conexões com destino à porta 25/tcp.