Eu finalmente consegui uma solução para isso, mas tive que incomodar o canal #postfix
IRC no Freenode para obtê-lo. Eles sugeriram usar header_checks
para processar corretamente os cabeçalhos com regex ou similar para determinar as políticas de rejeição.
Então, eu fiz isso. Eu coloquei header_checks = regexp:/etc/postfix/header_checks
no arquivo main.cf
para PostFix e, em seguida, configurei as regras como segue no arquivo /etc/postfix/header_checks
:
/etc/postfix/header_checks:
/^To: [email protected]/ REJECT Recipient rejected by policy.
/^To: baduser@/ REJECT Recipient rejected by policy.
Isso pode ser expandido para verificar certos campos "De" ou outros itens nos cabeçalhos. Dito isto, você tem que saber o seu regex um pouco para fazer o trabalho. Você pode usar /^From: [email protected]/
para os campos De ou qualquer coisa, mas você precisa da parte /^
no início da regex para funcionar corretamente.
É uma pena que isso não esteja mais claramente documentado, mas eu consegui resolver o problema com header_checks
, então isso conta como uma resposta.