Postfix, spécifier une IP différente en fonction du domaine de l’émetteur
Si vous utilisez Postfix et que vous souhaitez spécifier plusieurs IP sources pour vos emails en fonction de l’émetteur de l’email, vous pouvez utiliser le paramètre de configuration sender_dependent_default_transport_maps.
Ce paramètre va vous permettre, en fonction de l’émetteur de l’email sur votre serveur de spécifier une IP précise. Pour cela, nous allons utiliser une map utilisant un regexp, et la fonction smtp_bind_address de Postfix.
smtp_bind_addresssmtp
Il faut d’abord créer une nouvelle map. Les 2 domaines que j’ai à router sur des IPs différentes seront admin-serv.net ainsi que aserv.eu.
Le fichier sdd_transport_maps.regexp
cd /etc/postfix/ nano sdd_transport_maps.regexp
Insérez les lignes correspondantes à votre domaine:
/@admin-serv\.net$/ adminserv_net: /@aserv\.eu$/ aserv_eu:
Maintenant, dans notre master.cf, nous allons créer des nouvelles routes.
nano /etc/postfix/master.cf adminserv_net unix - - n - - smtp -o smtp_bind_address=IP1 -o smtp_helo_name=admin-serv.net -o syslog_name=postfix-adminserv_net aserv_eu unix - - n - - smtp -o smtp_bind_address=IP2 -o smtp_helo_name=aserv.eu -o syslog_name=postfix-aserv_eu
Note: Vous pouvez aussi en profiter pour binder une IPv6 à l’aide du paramètre smtp_bind_address6 de postfix.
Maintenant, nous allons modifier le fichier main.cf pour ajouter notre fichier de map.
nano /etc/postfix/main.cf sender_dependent_default_transport_maps = regexp:/etc/postfix/sdd_transport_maps.regexp
Il ne nous reste plus qu’à relancer Postfix
# Un reload a semblé fonctionner chez moi, n'hésitez pas à faire un restart /etc/init.d/postfix reload
Laisser un commentaire