Aqui estão alguns pensamentos, que exigirão alguma personalização para atender às suas necessidades exatas. A primeira coisa que descobri foi que o Postfix parece não gostar de fazer nada em endereços que são aliases (ex. virtual_alias_domain
/ virtual_alias_maps
). Mas tudo bem, pois, na realidade, não importa como esses endereços são chamados, desde que tudo seja entregue corretamente no final.
Portanto, no Postfix main.cf
, adicione as seguintes linhas:
virtual_mailbox_domains = example.org
# Feel free to give munger a better name, just update master.cf appropriately
virtual_transport = munger:
Em seguida, você precisa informar ao Postfix o que munger
realmente significa. Adicione o seguinte (consulte o tubo (8) para obter mais opções). Então adicione o seguinte a master.cf
:
munger unix - n n - - pipe
flags= user=nobody argv=/usr/bin/redirector
De acordo com o acima exposto, qualquer coisa destinada example.org
será enviada ao /usr/bin/redirector
programa (ou como você quiser chamá-lo). Para as coisas mais normais, você precisaria de alguns argumentos de linha de comando para obter informações sobre remetente / destinatário (mais uma vez, pipe(8)
tem mais detalhes), mas como os endereços de remetente e destino são corrigidos, nada mais é necessário na linha de comando.
Agora você só precisa escrever o redirector
programa. Isso funcionou para mim:
#!/bin/sh
/usr/sbin/sendmail -bm -f 'something@myserver' 'something@gmail.com'
É um script de shell comum (ou o idioma de sua escolha); portanto, faça-o tão simples ou complexo quanto desejar.