Voici quelques réflexions, qui nécessiteront une certaine personnalisation pour répondre à vos besoins exacts. La première chose que j'ai trouvée est que Postfix ne semble pas aimer faire quoi que ce soit aux adresses qui sont des alias (ie virtual_alias_domain
/ virtual_alias_maps
). Mais c'est bien car en réalité, peu importe comment ces adresses sont appelées tant que tout est livré correctement à la fin.
Donc, dans Postfix main.cf
, ajoutez les lignes suivantes:
virtual_mailbox_domains = example.org
# Feel free to give munger a better name, just update master.cf appropriately
virtual_transport = munger:
Ensuite, vous devez dire à Postfix ce que cela munger
signifie réellement. Ajoutez ce qui suit (voir pipe (8) pour plus d'options). Ajoutez donc ce qui suit à master.cf
:
munger unix - n n - - pipe
flags= user=nobody argv=/usr/bin/redirector
Selon ce qui précède, tout ce qui est destiné example.org
sera envoyé au /usr/bin/redirector
programme (ou comme vous voulez l'appeler). Pour la plupart des choses normales, vous auriez besoin d'arguments de ligne de commande pour les informations sur l'expéditeur / le destinataire (encore une fois, pipe(8)
a plus de détails) mais puisque les adresses d'expéditeur et de destination sont fixes, rien d'autre n'est nécessaire sur la ligne de commande.
Il ne vous reste plus qu'à écrire le redirector
programme. Cela a fonctionné pour moi:
#!/bin/sh
/usr/sbin/sendmail -bm -f 'something@myserver' 'something@gmail.com'
C'est un script shell standard (ou la langue de votre choix), rendez-le aussi simple ou complexe que vous le souhaitez.