User Tools

Site Tools


doc:appunti:linux:sa:postfix_multi_istance

This is an old revision of the document!


Postfix multi istanza

Vogliamo avere Postfix su uno stesso host che risponde a due indirizzi IP diversi (IP alias) con due configurazioni diverse.

Per inizializzare una configurazione multi istanza di Postfix si lancia il comando

postmulti -e init

vengono aggiunge alcune righe a /etc/postfix/main.cf:

multi_instance_wrapper = ${command_directory}/postmulti -p --
multi_instance_enable = yes

Quindi si crea la seconda istanza, che deve avere un nome del tipo postfix-. Nel nostro caso la seconda istanza sarà specializzata come server MX primario, quindi scegliamo postfix-mx. La seconda istanza deve appartenere anche ad un gruppo, per questo scegliamo il nome mta:

postmulti -I postfix-mx -G mta -e create

Vengono create le directory /etc/postfix-mx/, /var/spool/postfix-mx/, /var/lib/postfix-mx/. Il file /etc/postfix-mx/main.cf ha alcuni parametri essenziali per gestire la seconda istanza, ma altri vanno configurati a mano. In particolare abbiamo messo:

data_directory = /var/lib/postfix-mx
queue_directory = /var/spool/postfix-mx
multi_instance_group = mta
multi_instance_name = postfix-mx
inet_interfaces = 10.0.1.91
#master_service_disable = inet
master_service_disable =

Per legare la seconda istanza all'indirizzo IP alias di deve modificare /etc/postfix-mx/master.cf:

#smtp         inet  n       -       -       -       -       smtpd
10.0.1.91:25  inet  n       -       -       -       -       smtpd

Per abilitare la seconda istanza e verificare che lo sia davvero (deve esserci una y nella terza colonna):

postmulti -i postfix-mx -e enable
postmulti -l -a
-               -               y         /etc/postfix
postfix-mx      mta             y         /etc/postfix-mx

Helper per multi istanza

Per editare il file main.cf di una istanza secondaria si possono usare in abbinata i programmi helper postmulti e postconf. In questo esempio di imposta l'opzione master_service_disable al valore blank:

postmulti -i postfix-mx -x postconf -e "master_service_disable ="

Avviare tutte le istanze

Lo script start/stop di Debian gestisce le multi istanze, quindi basta dare:

/etc/init.d/postfix restart

Tool mailq e simili multi istanza

Alcuni alias di postfix sono usati per particolari modalità, ad esempio l'alias mailq è tradizionalmente utilizzato per vedere i messaggi in coda. In una configurazione multi istanza è necessario indicare la configurazione alternativa specificando la directory di configurazione. Ad esempio se la directory di configurazione alternativa è /etc/postfix-mx/:

mailq -C /etc/postfix-mx

Discorso analogo per il comando, usato ad esempio per vedere il contenuto di un messaggio in coda (notare l'opzione -c minuscola):

postcat -c /etc/postfix-mx -q 6702568035C
doc/appunti/linux/sa/postfix_multi_istance.1512579264.txt.gz · Last modified: 2017/12/06 17:54 by niccolo