Posso abrir uma exceção para reject_unknown_client_hostname?

11

Meu SMTP externo está bloqueando alguns emails com o erro 450 4.7.1 Client host rejected: cannot find your hostname, que rastreamos até o reject_unknown_client_hostname. Por acaso, o nome do host para o qual o endereço reverso é resolvido não possui, por si só, um registro DNS. As chances de consertar isso são baixas, mas precisamos receber os emails deles.

Então, podemos configurar algum tipo de exceção para contornar essa regra apenas para eles?

Daniel C. Sobral
fonte

Respostas:

14

Você pode permitir que um cliente específico ignore o smtpd_client_restrictions:

smtpd_client_restrictions =
  check_client_access hash:/etc/postfix/client_access,
  reject_invalid_hostname

Isso primeiro executaria a ação especificada client_accesse, se ela não corresponder a nenhuma regra listada lá, rejeite os remetentes que não possuem domínio válido.

A sintaxe em client_access seria:

1.2.3.4    OK
bad.domain REJECT

Depois que esse arquivo estiver configurado, execute o seguinte comando para gerar a versão indexada desse arquivo (db):

postmap /etc/postifx/client_access

Recarregue o postfix e você deve estar bem.

Mais documentos sobre tabelas de acesso

Mais sobre smtpd_client_restrictions

EDIT : Se, por algum motivo, você precisar depurar isso, tente habilitar a depuração no smtpd, dependendo de quem está se conectando ao seu serviço. Edite /etc/postfix/master.cf, localize o serviço smtpd e adicione uma linha como esta:

smtp      inet  n       -       -       -       -       smtpd
       -o debug_peer_level=10 -o debug_peer_list=1.2.3.4

Ele habilitará a depuração apenas para o par 1.2.3.4 . Isso deve lhe dar uma idéia do que está acontecendo quando o cliente 1.2.3.4 está se conectando ao serviço smtp para enviar e-mail, observando o seu log de mensagens.

Torian
fonte
Não está funcionando por algum motivo. Existe alguma maneira de depurar isso?
Daniel C. Sobral
confira a resposta. Eu editei e coloquei algumas informações sobre como depurar o cenário apenas para o par que está incomodando você.
Torian
Obrigado, mas acho que sei qual é o problema ... Não são as regras do remetente que rejeitam o email, mas as regras do cliente - então eu estava fazendo alterações no lugar errado. Agora estou colocando a configuração do cliente em prática (check_client_access em smtpd_client_restrictions) e, se tudo der certo, postarei uma nota aqui. I irá pedir para que o texto seja corrigido antes de aceitar a resposta embora. :-) De qualquer forma, obrigado por me colocar na direção certa.
Daniel C. Sobral
De fato, você está certo. O problema de ser o cliente sem registro DNS reverso e não o destinatário (ou do) para o qual está enviando é resolvido por smtpd_client_restrictions. A maneira pela qual você resolve isso é semelhante. Eu vou corrigir a resposta. Bem-vindo e obrigado por apontar o erro.
Torian
Parece que tenho pontos insuficientes nesta plataforma de pilha para editar esta postagem útil: Há um pequeno erro de digitação "postifx" que é facilmente esquecido.
BurninLeo 9/03/19