Como posso obter o postfix para enviar email para diferentes hosts de retransmissão?

10

Estou executando vários sites em um único servidor. Estou usando o sendgrid para enviar meu email.

No momento, tenho o postfix para retransmitir todos os emails de saída para uma única conta do sendgrid, usando smtp_sasl para autenticação.

Preciso enviar o email de cada domínio para uma conta sendgrid diferente. Portanto, para domain1.com, eu gostaria de retransmitir para sendgrid usando uma conta e, para domain2.com, eu precisaria do postfix para usar uma conta diferente para autenticar.

Joe Van Dyk
fonte
Acho que não - eles precisam ir para o mesmo host, mas com autenticação diferente.
Joe Van Dyk

Respostas:

10

É uma pena que este tenha passado tanto tempo sem uma resposta correta. E, por falar nisso, é uma pena que não seja tratado pela documentação do sendgrid. As diretivas necessárias são tratadas sucintamente em http://www.postfix.org/SASL_README.html#client_sasl_sender , que citarei aqui, com algumas modificações específicas do sendgrid:

/etc/postfix/main.cf:
    smtp_sender_dependent_authentication = yes
    sender_dependent_relayhost_maps = hash:/etc/postfix/sender_relay
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    relayhost = my.default.relay.com

/etc/postfix/sasl_passwd:
    # Per-sender authentication; see also /etc/postfix/sender_relay.
    @domain1.example.com               username1:password1
    @domain2.example.com               username2:password2
    # Login information for the default relayhost.
    [my.default.relay.com]              username:password
    # Alternative form:
    # [mail.isp.example]:submission username:password

/etc/postfix/sender_relay:
    # Per-sender provider; see also /etc/postfix/sasl_passwd.
    @domain1.example.com               [sendgrid.net]:submission
    @domain2.example.com               [sendgrid.net]:submission

Algumas notas aqui embora.

  1. A opção acima alterna o endereço SMTP do envelope, não o endereço no cabeçalho MIME.
  2. É mais difícil obter o postfix para enviar emails em direções diferentes com base nas verificações do cabeçalho MIME. Tenho certeza de que é possível de alguma forma, mas o postfix não foi projetado para isso.
  3. DKIM Não se importa se o endereço SMTP Envelope do endereço ou o endereço MIME Header From correspondem ao domínio usado para a assinatura DKIM. Pode ser que as políticas de spam de alguns servidores receptores se importem. (Mais informações muito apreciadas aqui).
  4. Por causa de 1. e 3., você provavelmente não precisa enviar para separar subcontas do sendgrid.
mc0e
fonte
É isso o que tenho feito nos últimos dois anos, tem funcionado muito bem!
precisa
1
@JoeVanDyk você postou esse comentário 2 anos após a pergunta e disse que faz isso há alguns anos .. isso implica que você fez isso antes mesmo de fazer a pergunta, então, por que perguntar?
barlop
Encontrei a resposta um tempo depois de postar a pergunta .. e esqueci de voltar para atualizar.
precisa