Eu tenho uma instalação do Postfix em uma única máquina, que é o único destino de e-mail final para:
- O nome do host da máquina (
mail.example.org
) e localhost
- listas do Mailman em
lists.example.org
- Vários domínios virtuais
As configurações relevantes em main.cf
são:
myhostname = mail.example.org
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = $myhostname
mydestination = localhost, $myorigin
relay_domains = $mydestination, lists.example.org
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
# Virtual domains
virtual_mailbox_base = /var/mail/vhosts
virtual_mailbox_domains = hash:/etc/postfix/virtual_domains
virtual_mailbox_maps = hash:/etc/postfix/virtual_mailboxes
virtual_alias_maps = hash:/etc/postfix/virtual_aliases
virtual_minimum_uid = 100
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
# mailman configuration
mailman_destination_recipient_limit = 1
transport_maps = hash:/etc/postfix/transport
smtpd_relay_restrictions = permit_mynetworks,
reject_invalid_hostname,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_unauth_destination,
reject_unlisted_recipient,
reject_rbl_client zen.spamhaus.org,
permit
Atualmente, o e-mail para lists.example.org
é roteado para o Mailman por meio da seguinte configuração de transport_maps
:
lists.example.org mailman:
Isso funciona, mas significa que, se um email for enviado para uma lista desconhecida, a mensagem será aceita pelo Postfix e devolvida quando for processada pelo Mailman. Por várias razões - particularmente reduzindo o backscatter e rejeitando e-mail o mais cedo possível - eu quero que o Postfix rejeite o e-mail assim que ele vir um RCPT TO
que corresponda a @lists.example.org
e não corresponda a uma lista do Mailman. >
Acho que posso conseguir esse resultado criando um arquivo contendo todos os aliases da lista do Mailman e especificando isso como relay_recipient_maps
in main.cf
. No entanto, meu entendimento é que relay_recipient_maps
se aplica a relay_domains
e não quero que $mydestination
endereços sejam afetados.
Então, minhas duas perguntas relacionadas são:
- Devo remover
$mydestination
de relay_domains
e, se eu, meus aliases existentes continuarem funcionando?
- Se
relay_domains
estiver definido como lists.example.org
, relay_recipient_maps
atingirá o resultado desejado?
Como alternativa, se houver uma maneira do Postfix consultar o Mailman e receber uma resposta antes de aceitar o email para entrega (talvez com um filtro antes da fila - é assim que eu ligo o email para o SpamAssassin), isso também .
Obrigado antecipadamente. : -)