Configurare Postfix per inviare mail da un server Linux è lo scopo della guida. Postfix è un software della categoria MTA (Mail Transfer Agent) ed MDA (Mail Delivery Agent) molto flessibile e complesso, lo scopo di questo articolo è fornire un riferimento immediato e pratico per configurare postfix in modo che possa inviare mail.
Utilizzeremo come riferimento un server Linux con Centos 6.5. Se Postfix non risultasse già installato basterà eseguire il comando
#yum install postfix
Supponiamo di voler configurare postfix in modo che possa inviare mail dall’account server@example.com con password miapwd su server smtp smtp.example.com:
editiamo il file /etc/postfix/main.cf che contiene la configurazione globale di postfix:
#vi /etc/postfix/main.cf
andando a sostituire la linea:
#relayhost= [mailserver.isp.tld] con relayhost= smtp.example.com
rimuovendo il # che indica il commento. Aggiungiamo quindi, in coda al file, i seguenti parametri:
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
smtp_generic_maps = hash:/etc/postfix/generic
che specificano a postfix che è necessaria l’autenticazione sul server, con password contenuta nel file /etc/postfix/sasl_passwd e che il file /etc/postfix/generic contiene la tabella di sostituzione dei mittenti (campo from) della mail.
Vediamo ora come valorizzare i due file:
Impostiamo l’autenticazione creando il file sasl_passwd e scriviamo i dati relativi al server smtp ed all’account da utilizzare:
#vi /etc/postfix/sasl_passwd
Quindi inseriamo:
smtp.example.com server@example.com: miapwd
Salviamo il file e chiudiamo vi. A questo punto creiamo il file .db che postfix utilizzerà per l’autenticazione al server di posta con il comando:
#postmap hash:/etc/postfix/sasl_passwd
Il file sasl_passwd.db viene creato, possiamo anche cancellare il file in chiaro sasl_passwd.
Valorizziamo ora il file generic:
#vi /etc/postfix/generic
Quindi inseriamo la mappatura degli utenti:
@localdomain utente@example.com
Salviamo il file e chiudiamo vi. A questo punto creiamo il file .db che postfix utilizzerà per la sostituzione dell’indirizzo mittente:
#postmap hash:/etc/postfix/generic
Il file generic.db viene creato, possiamo anche cancellare il file in chiaro generic.
Per attivare le impostazioni non ci resta che riavviare il servizio postfix con il comando:
#service postfix restart
Testiamo il corretto funzionamento inviando una mail di prova con il comando:
#mail –s mail di prova indirizzo@mail.com
che invia una mail all’indirizzo indirizzo@mail.com con oggetto “mail di prova”.
Se tutto è andato bene nella casella indirizzo@mail.com ci sarà il nostro messaggio mail di prova, diversamente basterà andare a vedere i log di postfix per capire il problema; digitiamo:
#tail /var/log/maillog
Il comando visualizzerà le ultime 10 righe del file di log, andiamo quindi ad analizzare i valori del campo “from=” e “to=” verificando che quanto contenuto nel campo from sia identico all’indirizzo contenuto nella mappatura specificata nel file /etc/postfix/generic.
Ottimo Articolo, Grazie