Postfix multiples “myhostname” in postfix ?

Bonjour,

Sur mon serveur email j’ai deux cartes réseaux avec deux adresses ip WAN.

J’utilise postfix mail_version = 2.9.6

J’ai deux noms de domaines

mail.domaine1.com => ip 1.1.1.1
mail.domaine2.com => ip = 1.1.1.2

A chaque fois quand je fait un test sur MX Tools
il m’affiche pour le deuxième nom de domaine une erreur: SMTP Banner Check - Reverse DNS does not match SMTP Banner

Ceci est du à la variable smtpd_banner la quelle se trouve dans le fichier /etc/postfix/main.cf

J’ai trouve deux documents qui décrivent des méthodes supposé à résoudre ce problème mais aucune des méthodes ne fonctionne!

  1. serverfault.com/questions/624373 … in-postfix

  2. serverfault.com/questions/307923 … -hostnames

Je souhaite, quand j’interroge par exemple mon server1 via Telnet,

qu’il me retourne 220 mail.domaine1.com et c’est ce qu’il fait

ainsi pour mon deuxième domaine

220 mail.domaine2.com … hors pour le deuxième serveur la réponse est autre c’est à dire 220 mail.domaine1.com

Avez vous une solution pour mon petit problème?

Merci d’avance.

Le plus simple ne serait il pas d’avoir 2 Postfix en parallèle ? Avec les 2 fichiers de conf qui vont bien :wink:

Bonjour Mimoza,

Merci pour votre réponse

Le plus simple ne serait il pas d’avoir 2 Postfix en parallèle ?

Es la méthode suivante que vous suggèrez?
steam.io/2013/11/05/postfix-mult … iguration/
voire aussi
blog.jotheroot.fr/?p=26

Je ne suis pas très emballé par cette solution des multiples instances …

Oui en effet je pensais a une solution comme cela. Mais tu m’as appris que Postfix avait intégré un mécanisme pour :023

Pourquoi tu n’aime pas cette solution ? :017

Bonjour Mimoza,

Je suis entrent de mettre en place une instance postmulti (pour la première fois) et c’est tout sauf simpliste … mais bon c’est le prix à payer pour pouvoir remplir les exigences qui nous fixent les fournisseurs d’internet, FAI, à cause de ses “putains” de spammeurs.

Puis les commandes pour relancer les instances postmulti se distinguant des commandes habituelles Postfix …

Quand on à plusieurs serveurs à administrer, comme moi, il faut s’en souvenir …

Je suis actuellement entrent de générer les nouveau certificats (autosigné) pour la nouvelle instance postmulti …
e-rave.nl/create-a-self-sig … or-postfix

Je donnerai mes nouvelles de que j’ai réussi à franchir toutes les barrières :wink:

A suivre …

Bon, j’ai enfin réussi à configurer mon serveur postmulti pour qu’il rempli toutes mes exigences.

J’avais au départ une seule carte réseau et une adresse ip.

Comme le reverse dns d’un serveur email doit correspondre au nom de domaine correspondant j’étais obligé d’ajouter une deuxième carte réseau pour avoir une adresse ip dédié au deuxième nom de domaine.

Voici ma configuration réseau

[code]vim /etc/network/interfaces

This file describes the network interfaces available on your system

and how to activate them. For more information, see interfaces(5).

The loopback network interface

auto lo
iface lo inet loopback

The primary network interface

allow-hotplug eth0
iface eth0 inet static
address 86.xxx.yyy.123
netmask 255.255.255.248
network 86.xxx.yyy.0
broadcast 86.xxx.yyy.255
gateway 86.xxx.yyy.121

The secondary network interface

http://www.commentcamarche.net/forum/affich-1943263-ajouter-un-interface-reseau-eth1

allow-hotplug eth1
iface eth1 inet static
address 86.xxx.yyy.124
netmask 255.255.255.248
network 86.xxx.yyy.0
broadcast 86.xxx.yyy.255

gateway 86.xxx.yyy.121

    dns-nameservers 86.xxx.yyy.123

[/code]
Attention à désactiver le gateway de la deuxième carte réseau, car comme dans mon cas, c’est le même gateway que celui de la première carte réseau!

Le premier document qui ma été très utile pour la mise en place d’un serveur Postfix multi-instance été le suivant
blog.jotheroot.fr/?p=26

Attention quand même ce document n’aborde pas toutes les étapes nécessaires pour arriver au but, les quelles je vais aborder par la suite…

Poursuivons avec la configuration du fichier /etc/postfix/master.cf

dans le quel il faut changer la configuration des lignes suivantes:

pour quelle devienne

idem pour la ligne

laquelle devient

J’ai adapté la nomination de ce petit tutorial à titre d’exemple qui se trouve dans blog.jotheroot.fr/?p=26 et j’utilise son nom d’instance postfix-new pour la deuxième instance!
Attention les noms des instances sont limité à 15 caracters!!!

Alors pour la nouvelle instance vous devez éditer le fichier et adapter les deux lignes

et

Attention à l’adresse ip! C’est la deuxième adresse ip terminant comme dans cet exemple par .124 et pas par .123!

Puis le fichier /etc/postfix/main.cf doit contenir la ligne suivante:

et le fichier /etc/postfix-new/main.cf

Non, nous n’avons pas encore terminé, loin de la!

Mon serveur utilise un chiffrement ssl et il faut également créer une deuxième “instance” SASL!!!
Cela été encore une grosse galère pour moi.

Puis en cherchant j’ai trouvé le document suivant qui ma été utile mais qui contiens une petite erreur de taille qui ma fait perdre pas mal du temps.
serverfault.com/questions/558377 … entication

Pour créer la deuxième instance SASL il faut simplement faire une copie comme suite:

puis éditer le fichier

Voici ma configuration SASL

[code]#

Settings for saslauthd daemon

Please read /usr/share/doc/sasl2-bin/README.Debian for details.

Should saslauthd run automatically on startup? (default: no)

START=yes

Description of this saslauthd instance. Recommended.

(suggestion: SASL Authentication Daemon)

DESC=“SASL Authentication Daemon”

Short name of this saslauthd instance. Strongly recommended.

(suggestion: saslauthd)

NAME=“saslauthd”

Which authentication mechanisms should saslauthd use? (default: pam)

Available options in this Debian package:

getpwent – use the getpwent() library function

kerberos5 – use Kerberos 5

pam – use PAM

rimap – use a remote IMAP server

shadow – use the local shadow password file

sasldb – use the local sasldb database file

ldap – use LDAP (configuration is in /etc/saslauthd.conf)

Only one option may be used at a time. See the saslauthd man page

for more information.

Example: MECHANISMS=“pam”

MECHANISMS=“pam”

Additional options for this mechanism. (default: none)

See the saslauthd man page for information about mech-specific options.

MECH_OPTIONS=""

How many saslauthd processes should we run? (default: 5)

A value of 0 will fork a new process for each connection.

THREADS=5

Other options (default: -c -m /var/run/saslauthd)

Note: You MUST specify the -m option or saslauthd won’t run!

WARNING: DO NOT SPECIFY THE -d OPTION.

The -d option will cause saslauthd to run in the foreground instead of as

a daemon. This will PREVENT YOUR SYSTEM FROM BOOTING PROPERLY. If you wish

to run saslauthd in debug mode, please run it by hand to be safe.

See /usr/share/doc/sasl2-bin/README.Debian for Debian-specific information.

See the saslauthd man page and the output of ‘saslauthd -h’ for general

information about these options.

Example for chroot Postfix users: “-c -m /var/spool/postfix/var/run/saslauthd”

Example for non-chroot Postfix users: “-c -m /var/run/saslauthd”

To know if your Postfix is running chroot, check /etc/postfix/master.cf.

If it has the line “smtp inet n - y - - smtpd” or “smtp inet n - - - - smtpd”

then your Postfix is running in a chroot.

If it has the line “smtp inet n - n - - smtpd” then your Postfix is NOT

running in a chroot.

OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"[/code]

Alors la attention, attention attention!!!
Dans le document du lien précédent est une erreur grave !

La variable Name de la deuxième instance SASL voire n’ème instance SASL doit être “saslauthd” et non NAME=“saslauthd-out” voire NAME=“saslauthd-new” !!!
Attention donc que la ligne soit comme la suivante!!!
NAME=“saslauthd”

redémarrez ensuite le service saslauthd

Ceci crée les répertoires nécessaires de la deuxième instance SASL…
/var/spool/postfix-new/var/run/saslauthd-new

petite vérification

ls /var/spool/postfix-new/var/run/saslauthd-new cache.flock cache.mmap mux mux.accept saslauthd.pid

Voici une commande qui ma été très utile pour vérifier le fonctionnement de la deuxième instance postfix smtp

J’ai eu aussi un message d’erreur concernant dynamicmaps pendant la création de la nouvelle instance et j’ai éxécute la commande suivante pour y remédier …

Un dernier conseil:
je me suis crée un fichier shell pour rédemarrer avec une seule commande toutes mes services email :

J’ai crée un fichier portant le nom reboot-mail-services.sh et voiçi son contenu:

[code]#!/bin/sh

/etc/init.d/postfix restart
/etc/init.d/saslauthd restart
/etc/init.d/courier-authdaemon restart
/etc/init.d/courier-imap restart
/etc/init.d/courier-imap-ssl restart
/etc/init.d/courier-pop restart
/etc/init.d/courier-pop-ssl restart

postmulti -i postfix-new -p stop
postmulti -i postfix-new -p start[/code]

Pour la génération du certificat autosigné du deuxième nom de domaine d’email j’ai crée un nouveau certificat (bien plus simple comme dans la lien de mon précédent message)

mkdir /etc/postfix-new/ssl cd /etc:postfix-new/ssl openssl req -new -outform PEM -out smtpd.cert -newkey rsa:2048 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509 chmod 400 /etc/postfix-new/ssl/smtpd.key
puis dans le fichier /etc/postfix-new/main.cf j’ai ajouté

[code]#SASL authentification
smtpd_sasl_auth_enable = yes
#smtpd_sasl_path = smtp
broken_sasl_auth_clients = yes

TLS parameters

smtpd_tls_cert_file=/etc/postfix-new/ssl/smtpd.cert
smtpd_tls_key_file=/etc/postfix-new/ssl/smtpd.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache[/code]

J’ai oublié une chose importante:
Dans le fichier /etc/postfix-new/main.cf

inet_protocols = ipv4 #master_service_disable = inet authorized_submit_users = queue_directory = /var/spool/postfix-new multi_instance_group = mta multi_instance_name = postfix-new multi_instance_enable = yes

il faut absolument desactiver la ligne suivante
#master_service_disable = inet
si non il n’y aura pas d’écoute sur ports 25 et 465 en ce qui concerne la deuxième adresse ip 86.xxx.yyy.124

En espérant que ses informations seront utile à quelqu’un … :wink:

Cool merci pour le retour, mais mettre tout cela sur le Wiki serait encore mieux :mrgreen: