Especifique vários destinos de transporte postfix

1

A minha pergunta é semelhante a esta , mas não no sentido que quero E-mail para sempre ir para dois destinos. Em vez disso, estou tentando encontrar uma maneira de fornecer ao Postfix vários destinos de nexthop por domínio de destinatário, de modo que, se eu estiver retransmitindo mensagens para um destino externo com vários MXs e um deles ficar inativo, tente o próximo.

"Soluções" para este problema descobri que não funcionam aqui:

  1. bcc :: isso não resolveria o problema se eu estivesse tentando enviar para o mesmo endereço uma maneira diferente
  2. crie um novo protocolo ( como este ) :: esta solução Eu acho que exemplifica o problema em que postfix parece permitir transportes de fallback, mas apenas em uma escala global (leia-se: enviar todos os e-mails, independentemente do destinatário para os seguintes servidores se o transporte principal dos destinatários estiver inoperante ). Novos protocolos na minha configuração são impraticáveis, pois posso ter muitos domínios sendo retransmitidos.
  3. Qualquer que seja isto é :: Este parece fala sobre o que estou tentando realizar, mas, novamente, tenho a sensação de que isso é apenas para uma capacidade global. Também é confuso, pois parece implicar que você pode especificar vários transportes, mas é claro que o Postfix não terá nada disso se você tentar:

    Usando várias linhas:

    postmap: warning: duplicate entry
    

    Usando a mesma linha:

    fatal: garbage after "]" in server description
    

    Eu não sei, talvez eu esteja apenas entendendo mal a sintaxe ou algo assim.

  4. DNS :: Algumas sugestões envolvem a configuração de DNS interno e a configuração de registros MX para apontar para vários destinos. Esta também é uma solução impraticável.

Parece-me tão estranho que o Postfix não tenha a capacidade de permitir a definição de múltiplos transportes, já que ter domínios com múltiplos MX's é tão comum, por isso estou supondo que o Postfix POSSA ter essa capacidade que eu ve apenas não encontrado documentado ou entendido, e que "soluções alternativas" vacilantes são desnecessárias.

Alguém por acaso sabe se minha suposição está correta (em que caso, como posso configurar isso?) ou errado (nesse caso, você encontrou uma solução escalonável?)?

### EDIT ###

Para explicar minha configuração, trata-se de um filtro de spam de entrada (entre outras coisas), de modo que um domínio que o usa definiria seus registros MX para apontarem para esse servidor para filtragem de e-mails. transporte (s) de destino. Devido a isso, simplesmente pedir que o Postfix faça pesquisas de DNS para registros MX não funcionaria, porque isso simplesmente se tornaria o resultado.

    
por Adam V 19.04.2018 / 19:23

2 respostas

1

A premissa na sua nota de edição está errada. O protocolo MX / árvore de decisão / o que for projetado para lidar com isso.

To explain my setup, this is an inbound spam filter (among other things), such that a domain that uses it would set their MX records to point to this server for mail filtering, and then after filtering it forwards it to the destination transport(s). Due to this, simply asking Postfix to do DNS lookups for MX records wouldn't work because it'd simply get itself as the result.

A maneira como os registros MX funcionam é que algo como

MX    10 mail.example.com.
MX    20 backupmx.example.com.
MX    30 mail.virusco.com.
MX    40 backupmx.virusco.com.

mail.example.com está configurado para aceitar apenas conexões SMTP de entrada dos outros 3 servidores (pense em firewall e conecte-se à porta 25). O servidor backupmx.example.com está configurado para aceitar apenas mensagens dos dois servidores virusco.com. os dois servidores virusco.com estão configurados para aceitar emails do mundo como servidores MX por exemplo.com

Meu servidor - foo.org - não pode acessar mail.example ou backupmx.example (por design de configuração) para que ele seja enviado para mail.virusco, que está configurado para encaminhar o email para mail.example via SMTP padrão MX decisão.

Isso significa que, se mail.example estiver inativo, AND backupmx.example estiver inativo, mail.virusco simplesmente reterá o e-mail e tentará novamente "mais tarde"

Se o mail.virusco estiver inativo por um tempo, o correio vai para o backupmx.virusco, é escaneado e, em seguida, o backupmx.virusco segue a árvore de decisão do MX e tenta a entrega para mail.example, backupmx.example, mail.virusco nesse ordem, e se nenhum for bem sucedido, também vai ficar no correio por "um tempo" e, em seguida, tente novamente entrega.

Você pode até mesmo retirar o backupmx.example do sistema e ele ainda funcionará dessa maneira. Um servidor MX com prioridade mais baixa (valor mais alto) tentará fornecer o servidor de prioridade mais alta (número mais baixo) até que ele atinja o ponto em que ele se sentará e tentará novamente mais tarde.

    
por 19.04.2018 / 21:12
0

O postfix não suporta isso. Até que isso aconteça, defina seu transporte para apontar para um balanceador de carga smtp ou lmtp.

    
por 20.04.2018 / 01:15