Situação: cerca de 10 máquinas virtuais (linux) que rodam postfix para enviar e-mails para diversos usuários. Esses e-mails são todos retransmitidos através de um servidor central que os envia para a Internet.
As máquinas virtuais têm nomes como: redmine.vanheusden.local ou scm.vanheusden.local e assim por diante.
Gostaria que o servidor postfix central renomeasse *@vanheusden.local para @vanheusden.com para todos os e-mails que ele retransmite antes de colocá-los na Internet.
Achei que poderia usar masquerade_domains, mas aparentemente isso (não mais) funciona?
masquerade_domains = vanheusden.com
local_header_rewrite_clients = static:all
masquerade_classes = envelope_sender, envelope_recipient, header_sender, header_recipient
Responder1
Infelizmente não é possível usar masquerade_domains para este caso de uso.
Com masquerade_domains é possível remover os nomes de domínio dos seus endereços de e-mail.
Exemplo:
/etc/postfix/main.cf:
masquerade_domains = foo.example.com example.com
strips "any.thing.foo.example.com" to "foo.example.com", but strips "any.thing.else.example.com" to "example.com".
Fonte:http://www.postfix.org/ADDRESS_REWRITING_README.html#masquerade
Em vez disso, você deve usar mapeamento genérico. Isso permitirá que você reescreva completamente um endereço da maneira que desejar.
Exemplo:
/etc/postfix/main.cf:
smtp_generic_maps = hash:/etc/postfix/generic
/etc/postfix/generic:
@vanheusden.local @vanheusden.com
Fonte:http://www.postfix.org/ADDRESS_REWRITING_README.html#generic