postfix restringe retransmissão de email apenas para determinados endereços de remetentes ("MAIL FROM:")

postfix restringe retransmissão de email apenas para determinados endereços de remetentes ("MAIL FROM:")

Gostaria de configurar o postfix para retransmitir mensagens apenas de determinados endereços de remetentes. O Postfix deve retransmitir mensagens para diferentes relayhosts(/smarthosts) (Gmail, AOL, ...) dependendo do endereço do remetente ("MAIL FROM:").

Até agora, minha configuração atual funciona da seguinte forma:

  • Os usuários autenticam no postfix para retransmissão de correio em geral. Se eles não puderem autenticar, nenhuma retransmissão será possível. Observe que esta autenticação é diferente da autenticação para os relayhosts.

  • Dependendo do endereço do remetente ("MAIL FROM:"), um determinado relayhost é selecionado ( smtp_sender_dependent_authentication, sender_dependent_relayhost_maps, smtp_sasl_password_maps). Isso também funciona bem.

  • No entanto, se o usuário puder autenticar e tiver um endereço de remetente não coberto sender_dependent_relayhost_maps, o postfix tentará retransmitir diretamente o e-mail - o que geralmente não funciona devido a restrições de endereço IP (listas negras).


Minha pergunta agora é: como rejeitar mensagens que teriam sido retransmitidas diretamente (sem smarthost), ou seja, onde o endereço do remetente não está listado sender_dependent_relayhost_maps? Alguma dica de como conseguir isso?

Responder1

Você precisaria de algum teste limitanteantes permit_sasl_authenticated. Um pré-requisito para isso seria ter o smtpd separado na porta 25para mensagens recebidas e outro smtpd parasubmissãono porto 587. Caso contrário, esta limitação faria com que o correio recebido fosse rejeitado, pois não passaria no teste. Em seguida, remova completamente o permit_sasl_authenticatedda porta 25e adicione o teste à sua configuração de envio no formato master.cf.

  • Para responder sua pergunta literalmente,check_sender_accessseria um teste adequado, colocando todos os domínios listados na lista de permissões sender_dependent_relayhost_mapse rejeitando o restante dos e-mails.

    check_sender_access type:table

    Pesquise o especificadoacesso(5)banco de dados para o MAIL FROMendereço, domínio, domínios pai ou localpart@e execute a ação correspondente.

    Isto pode ser adicionado a qualquersmtpd_sender_restrictionsousmtpd_recipient_restrictions.

  • O que faria o mesmo, mas impediria ainda mais que os usuários usassem os endereços uns dos outros, é usarreject_sender_login_mismatch. Isto precisa de um adicionalsmtpd_sender_login_mapstabela, mas se suas virtual_alias_mapsentradas já estiverem formadas como [email protected] username, você poderá usar o mesmo arquivo e os endereços de remetentes permitidos serão atualizados automaticamente sempre que você atualizar seu banco de dados de aliases virtuais com postmap. Um exemplo dessa configuração de envio em master.cf:

    submission inet n - - - - smtpd
    # Other parameters
      -o smtpd_sender_login_maps=hash:/etc/postfix/virtual
      -o smtpd_sender_restrictions=reject_sender_login_mismatch
      -o smtpd_client_restrictions=permit_sasl_authenticated,reject
    # Other parameters
    

informação relacionada