Destinatário de verificação de configuração do Postfix

0

Eu configurei meu servidor SMTP de e-mail Posfix no Ubuntu 16 e está funcionando. Eu costumava usar o servidor SMTP da minha empresa de hospedagem, mas prefiro usar o meu próprio.

Estou enviando e-mails com o Java Mail, mas a diferença é que quando eu envio pela empresa de hospedagem e o endereço do destinatário está errado, recebo:

com.sun.mail.smtp.SMTPAddressFailedException: 450 4.1.2: Endereço do destinatário rejeitado: domínio não encontrado

Mas quando eu envio com o Postfix, a exceção é lançada. Eu verifico o log do Postfix e a mensagem é:

Ação: falha Status: 5.4.4 Código de Diagnóstico: X-Postfix; Host ou nome de domínio não encontrado. Erro de serviço de nome para [email protected] type = AAAA: host não encontrado

Mas isso nunca é propagado como exceção java.

Alguém tem uma idéia de como configurar o Postfix para se comportar da mesma maneira?

Obrigado Hugo

    
por Hugo Larson 11.01.2018 / 04:59

1 resposta

0

Coloque reject_unknown_recipient_domain em smtpd_recipient_restrictions antes de permit_mynetworks , permit_sasl_authenticated e / ou permit_tls_clientcerts .

Se reject_unknown_sender_domain estiver faltando na configuração, ou se permit_* aparecer antes de reject_unknown_sender_domain , o postfix permitirá que todos os remetentes do cliente correspondam à regra de permissão para enviar e-mails sem que o domínio do destinatário seja verificado. O postfix aceitará os e-mails recebidos, enfileirará-os e só notará que o domínio não existe quando tentar entregá-lo ... e, em seguida, retornará a mensagem.

Se reject_unknown_sender_domain aparecer primeiro, ele será verificado para todos os clientes, se eles corresponderem a uma regra permit_* ou não, e o e-mail será rejeitado com um código 5xx.

No postfix, a ordem das regras é sempre significativa.

Exemplo:

Se você tem o seguinte em main.cf :

smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/junk,
  check_client_access hash:/etc/postfix/junk,
  check_helo_access hash:/etc/postfix/junk,
  reject_unauth_pipelining,
  permit_tls_clientcerts,
  permit_sasl_authenticated,
  permit_mynetworks

adicione reject_unknown_recipient_domain em algum lugar antes das linhas permit , por exemplo:

smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/junk,
  check_client_access hash:/etc/postfix/junk,
  check_helo_access hash:/etc/postfix/junk,
  reject_unauth_pipelining,
  reject_unknown_recipient_domain,
  permit_tls_clientcerts,
  permit_sasl_authenticated,
  permit_mynetworks

Se você ainda não tiver a regra smtpd_recipient_restrictions , adicione uma como:

smtpd_recipient_restrictions = reject_unauth_pipelining,
  reject_unknown_recipient_domain,
  permit_mynetworks

Você deve, no entanto, fazer mais algumas pesquisas sobre a configuração do postfix.

    
por 11.01.2018 / 06:25

Tags