Não é possível acessar o servidor de email por meio do SMTP

0

Estou tentando enviar e-mail de um servidor. O teste na minha máquina local funciona bem, mas no meu servidor Ubuntu de produção, o servidor web falha ao tentar enviar e-mail.

Estou usando o GMail como meu provedor de SMTP e parece que o problema é que o servidor de produção não permite acesso ao servidor SMTP do Google.

O comando a seguir estabeleceu uma conexão bem-sucedida em minha própria máquina, mas falha no servidor:

$ openssl s_client -crlf -connect smtp.gmail.com:465
connect: Connection refused
connect:errno=111

Eu tentei várias combinações de iptables caso as portas estejam fechadas. Eu também tentei desativar o firewall com ufw disable . Nenhum dos dois rendeu qualquer sucesso para mim.

Atualização:

telnet smtp.gmail.com 465 de saídas:

Trying 74.125.143.108...
Trying 74.125.143.109...
Trying 2a00:1450:4010:c04::6c...
telnet: Unable to connect to remote host: Network is unreachable

openssl s_client -starttls smtp -crlf -connect smtp.gmail.com:465 me dá:

connect: Connection refused
connect:errno=111

Além disso, iptables-save outputs:

# Generated by iptables-save v1.4.12 on Thu Aug 21 13:06:19 2014
*mangle
:PREROUTING ACCEPT [16698:11267219]
:INPUT ACCEPT [16698:11267219]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [13015:16282858]
:POSTROUTING ACCEPT [13015:16282858]
COMMIT
# Completed on Thu Aug 21 13:06:19 2014
# Generated by iptables-save v1.4.12 on Thu Aug 21 13:06:19 2014
*nat
:PREROUTING ACCEPT [1421:163021]
:INPUT ACCEPT [678:92411]
:OUTPUT ACCEPT [1339:83461]
:POSTROUTING ACCEPT [1339:83461]
COMMIT
# Completed on Thu Aug 21 13:06:19 2014
# Generated by iptables-save v1.4.12 on Thu Aug 21 13:06:19 2014
*filter
:INPUT ACCEPT [9933:3116585]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [12536:16243622]
-A INPUT -i lo -j ACCEPT
COMMIT
# Completed on Thu Aug 21 13:06:19 2014
    
por paldepind 21.08.2014 / 09:06

2 respostas

2

IIRC, openssl s_client -connect localhost usa TLS por padrão.

De link :

-ssl2, -ssl3, -tls1, -no_ssl2, -no_ssl3, -no_tls1

These options disable the use of certain SSL or TLS protocols. By default the initial handshake uses a method which should be compatible with all servers and permit them to use SSL v3, SSL v2 or TLS as appropriate.

Unfortunately there are a lot of ancient and broken servers in use which cannot handle this technique and will fail to connect. Some servers only work if TLS is turned off with the -no_tls option others will only support SSL v2 and may need the -ssl2 option.

Você pode ter que usar uma dessas opções.

    
por 21.08.2014 / 09:35
1

Primeiro, tente a conectividade básica para o seu destino.

telnet smtp.gmail.com 587

Se isso não funcionar, você provavelmente está analisando um problema de firewall.

Verifique se o seu TLS funciona

openssl s_client -starttls smtp -crlf -connect smtp.gmail.com:587

Se o primeiro funcionou, mas o TLS falhou, você provavelmente está usando um firewall de inspeção profunda que o impede de usar o TLS (porque ele não pode inspecionar o tráfego do TLS).

Seu problema parece mais um problema de firewall do que um problema de e-mail para mim.

Se precisar, descreva o que você tem como firewall & o que é configuração. Se for puramente iptables, o que parece possível em sua descrição até o momento, cole a saída de iptables-save .

Editar

Sua configuração do iptables está em branco. A única regra que você tem é irrelevante, porque o padrão é ACCEPT, portanto, podemos ignorar com segurança o iptables.

Como você não conseguiu nem estabelecer uma conexão TCP (telnet smtp.gmail.com 465), isso significa que você está completamente bloqueado por algum firewall, assumindo que todo o resto esteja funcionando, por exemplo, roteamento e assim por diante. Como esse é um servidor de produção, acho que isso pode ser excluído com segurança.

Então, agora você precisa discutir com sua equipe de rede ou consultar seu firewall externo porque está sendo bloqueado na porta 465.

Basta verificar a porta 587, bem como os exemplos acima, apenas para ver se essa porta também está bloqueada. Nesse caso, você provavelmente terá um firewall muito restritivo, permitindo apenas a porta 25, relacionada e estabelecida.

Você precisará adicionar 465 às portas de saída permitidas em qualquer firewall que esteja bloqueando você.

Não conheço o seu ambiente, mas alguns ambientes de alta segurança não permitem a criptografia de dentro da rede e, em seguida, a criptografia é aplicada no firewall. Você pode estar nessa ou em uma situação semelhante.

    
por 21.08.2014 / 12:17