Postfix Sender Verification 550

2

Tenho o Postfix e o Dovecot instalados em um VPS e configurados para encaminhar e-mails para um endereço do Gmail e aceitar solicitações do smtp do gmail para que ele possa enviar em nome desses domínios. O TLS e a autenticação estão funcionando, o email está chegando, os domínios MX, SPR, DKIM, SPF, todos configurados e funcionando.

No entanto, só posso enviar email para mim e para uma minoria de domínios. Por exemplo:

This is the mail system at host tomjn.com.

I'm sorry to have to inform you that your message could not
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to postmaster.

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

                   The mail system

<[email protected]>: host dc-cd3425bc.geekmatt.com[87.106.180.26] said:
    550-Verification failed for <[email protected]> 550-The mail server could
    not deliver mail to [email protected].  The account or domain may not
    exist, they may be blacklisted, or missing the proper dns entries. 550
    Sender verify failed (in reply to RCPT TO command)

Final-Recipient: rfc822; [email protected]
Original-Recipient: rfc822;[email protected]
Action: failed
Status: 5.0.0
Remote-MTA: dns; dc-cd3425bc.geekmatt.com
Diagnostic-Code: smtp; 550-Verification failed for <[email protected]> 550-The
    mail server could not deliver mail to [email protected].  The account or
    domain may not exist, they may be blacklisted, or missing the proper dns
    entries. 550 Sender verify failed

Não sei como proceder. É este o servidor remoto dizendo não ao meu? O meu dizendo não ao servidor remoto?

Eu procurei por verificação de endereço e achei isso:

link

No entanto, é ambíguo, quando diz que o destinatário está falando sobre o servidor remoto recebendo o email? Meu servidor está recebendo uma solicitação de verificação? O servidor remoto recebendo uma solicitação de verificação? Isso significa que o remetente do e-mail ou o remetente da solicitação de verificação? Não está claramente indicado. O googling levou a várias perguntas com respostas como "é uma má ideia, todos devem parar de usá-lo", para pessoas que corrigem o problema causado por algo que não estou usando (por exemplo, SRS).

E-mails para [email protected] não provocam resposta.

Aqui está o meu main.cf para o postfix:

# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
readme_directory = no

# TLS parameters
#smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
#smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
#smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_sasl_auth_enable = yes
smtpd_helo_required = yes
#smtpd_pw_server_security_options = cram-md5,digest-md5,login,plain
#content_filter = smtp-amavis:[127.0.0.1]:10024
#smtpd_helo_restrictions = reject_non_fqdn_helo_hostname reject_invalid_helo_hostname


smtpd_tls_cert_file=/etc/ssl/certs/dovecot.pem
smtpd_tls_key_file=/etc/ssl/private/dovecot.pem
smtpd_use_tls=yes
smtpd_tls_auth_only = yes

smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_sasl_authenticated

smtpd_client_restrictions =
          permit_mynetworks
          permit_sasl_authenticated
          REJECT
virtual_transport = lmtp:unix:private/dovecot-lmtp

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.


smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = tomjn.com
virtual_alias_domains = tomjn.com tomjn.co.uk
#alias_maps = 
#alias_database = hash:/etc/aliases
myorigin = /etc/mailname

virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf

#mydestination = localhost.com, , localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 216.239.32.0/19 64.233.160.0/19 66.249.80.0/20 72.14.192.0/18 209.85.128.0/17 66.102.0.0/20 74.125.0.0/16 64.18.0.0/20 207.126.144.0/20 173.194.0.0/16 [2001:4860:4000::]/36 [2404:6800:4000::]/36 [2607:f8b0:4000::]/36 [2800:3f0:4000::]/36 [2a00:1450:4000::]/36 [2c0f:fb50:4000::]/36
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all

milter_protocol = 2
milter_default_action = accept

smtpd_milters = inet:localhost:12301
non_smtpd_milters = inet:localhost:12301

sidenote: sim estou ciente do google apps, sim DNS está configurado corretamente, não estou usando apenas Dovecot para TLS não IMAP / POP3, sim [email protected] existe

    
por Tom J Nowell 10.09.2014 / 00:21

1 resposta

4

Sim, ele é chamado de verificação por remetente. A verificação foi feita pelo servidor de email geekmatt.com, não o seu. E com base na mensagem de erro, posso concluir que

550-Verification failed for <[email protected]> 550-The mail server could
not deliver mail to [email protected].  The account or domain may not
exist, they may be blacklisted, or missing the proper dns entries. 550
Sender verify failed

foi a mensagem de erro padrão do exim.

BTW, nem toda a verificação do remetente foi ruim. Para a explicação, vou assumir que você quer enviar um email FROM example.com para example.net

  1. No nível básico, o servidor de email example.net deve verificar se o domínio do remetente existe. Se um servidor de e-mail rejeitou seu e-mail nesse nível, seu domínio tem 1) nenhum DNS MX e nenhum registro DNS A ou 2) um registro MX malformado, como um registro com um nome de host MX de comprimento zero. No postfix, o parâmetro equivalente é reject_unknown_sender_domain

  2. No nível avançado, o servidor de e-mail tentará verificar se o endereço do remetente existe. Basicamente, antes de aceitar o seu email, o servidor de email example.net tentará telnet para o seu servidor de e-mail sem enviar qualquer e-mail . Essas verificações foram consideradas ruins por causa de várias razões .

Agora, parece que o domínio tomjn.com não cumpriu a verificação do remetente no nível básico. Aqui o registro MX do tomjn.com

% dig tomjn.com MX +short
1 178.62.28.136.tomjn.com.
% dig 178.62.28.136.tomjn.com

; <<>> DiG 9.9.5 <<>> 178.62.28.136.tomjn.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, **status: NXDOMAIN,** id: 52812
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;178.62.28.136.tomjn.com.       IN      A

;; AUTHORITY SECTION:
tomjn.com.              1800    IN      SOA     NS1.DIGITALOCEAN.com. hostmaster.tomjn.com. 1410110590 3600 900 1209600 1800

Lá, seu registro MX não tem um registro A válido. Assim, geekmatt.com rejeita seu email.

A solução: corrija seu registro MX

    
por 10.09.2014 / 06:20

Tags