iptables bloqueando o acesso ao SMTP na porta 25

1

Eu tenho o iptables em execução no meu servidor que bloqueia o acesso em todas as portas, exceto as permitidas. Uma dessas portas precisa ser SMTP na porta 25 e eu tenho a seguinte regra para isso:

-A INPUT -p tcp --dport 25 -j ACCEPT

A saída de iptables -L está abaixo:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
REJECT     all  --  anywhere             127.0.0.0/8          reject-with icmp-port-unreachable
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:mysql
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:smtp
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:pop3
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:imap2
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssmtp
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:submission
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:imaps
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:pop3s
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
ACCEPT     icmp --  anywhere             anywhere
LOG        all  --  anywhere             anywhere             limit: avg 5/min burst 5 LOG level debug prefix "iptables denied: "
DROP       all  --  anywhere             anywhere

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
DROP       all  --  anywhere             anywhere

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere

No entanto, quando tento fazer telnet <myip> 25 de um console do Windows, recebo esse erro:

Connecting To <my ip>...Could not open connection to the host, on port 25:
Connect failed

Fazendo o mesmo em outras portas abertas (80, 993 etc) funciona bem. Portanto, deve ser um problema do iptables.

Qual é a maneira correta de permitir acesso ao SMTP na porta 25 usando o iptables?

    
por Chris 03.08.2013 / 23:31

1 resposta

2

Como suas regras de entrada começam com uma regra de aceitação universal, nenhuma de suas outras regras entrará em vigor (porque o iptables funciona de acordo com a primeira regra: a primeira regra na cadeia para descartar o pacote de alguma forma última regra processada e a meta ACCEPT é descartada). Sua segunda regra também é questionável (bloquear todo o tráfego do host local), mas apenas porque geralmente não há qualquer razão confiável para isso. Também é incomum aceitar especificamente somente pacotes novos, relacionados ou estabelecidos na porta SSH.

Tudo isso dito, suas regras aceitam corretamente o tráfego SMTP, então o problema é que você não estava executando o SMTP. O Dovecot não é um servidor SMTP; considere usar qualquer um dos vários daemons SMTP, como o postfix.

Se alguma coisa, para sua regra 127.0.0.0/8, especifique a interface de entrada na qual você espera receber pacotes de localhost falsificados, se estiver preocupado com isso.

    
por 04.08.2013 / 00:12