Eu configurei main.cf
no postfix no Linux SUSE assim
inet_interfaces = localhost
inet_protocols = ipv4
masquerade_domains =
masquerade_exceptions = root
mydestination = $myhostname, localhost.$mydomain
myhostname = localhost
mynetworks_style = subnet
relayhost=[smtp-relay.gmail.com]:25
smtpd_delay_reject = yes
smtpd_helo_required = no
smtpd_client_restrictions =
smtpd_helo_restrictions =
smtp_sasl_auth_enable = no
smtp_sasl_security_options =
smtp_sasl_password_maps =
smtpd_sasl_auth_enable = no
smtp_use_tls = no
Eu tentei telnet smtp-relay.gmail.com 25
e está funcionando
De qualquer forma, quando tentei enviar email com postfix no servidor, tive o problema.
root@localhost
(host smtp-relay.gmail.com[ipv4] refused to talk to me: 421 4.7.0 Try again later, closing connection. (EHLO)
Responder1
Olhando para odocumentação oficial do Googleparece um "limite de taxa" do lado deles:
421, "4.7.0", Try again later, closing connection. This usually indicates a Denial of Service (DoS) for the SMTP relay at the HELO stage.
Quantos e-mails por minuto você está enviando? Por experiência, normalmente o Gmail aceita no máximo 50/100 e-mails/minuto.
EDITAR conforme comentário
Bem, parece que o mesmo erro aparece com um HELO/HELO errado (como suspeitei inicialmente).
Eu apenas tentei:
$> telnet smtp-relay.gmail.com 25
Trying 108.177.15.28...
Connected to gmail-smtp-relay.l.google.com.
Escape character is '^]'.
220 smtp-relay.gmail.com ESMTP b8-v6sm74445wrr.1 - gsmtp
helo localhost
421 4.7.0 Try again later, closing connection. (EHLO) b8-v6sm74445wrr.1 - gsmtp
Connection closed by foreign host.
Então é definitivamente sua string EHLO.
Você tem myhostname = localhost
no seu main.cf
arquivo, você deve alterá-lo com myhostname = [your server fqdn]
, ou seja, você deve ter umNome de domínio totalmente qualificadopara o seu servidor, complete com entradas DNS/rDNS corretas.
Responder2
Encontrei esse problema ao usar o Symfony/Mailer em meu aplicativo PHP. Que usou o relé SMTP assim:
MAILER_DSN=smtp://smtp-relay.gmail.com:587
A correção foi definir o local_domain
parâmetro:
MAILER_DSN=smtp://smtp-relay.gmail.com:587?local_domain=your-domain.com