Postfix, modo satellite e smtp con Gmail

Postfix, modo satellite e smtp con Gmail

di Aggiornato: 10 settembre 2018 0 commenti

Tempo fa abbiamo visto come è semplice impostare un smtp locale leggero qual’ora si abbia a disposizione un relay di posta aziendale. Tuttavia non è sempre così, e nel caso non ne abbiamo uno a disposizione, potremo usare quello di Google, o meglio quello di Gmail. L’esempio è stato testato con successo su un server Ubuntu, e ovviamente con un account Gmail.

Partiamo con l’installare Postfix, Mailutils e una serie di librerie.

apt-get update
apt-get install postfix mailutils libsasl2-2 libsasl2-modules

Di fatto le ultime due librerie ci servono poiché l’SMTP di Gmail utilizza connessioni cifrate. Durante l’installazione di Postfix vi verrà chiesto di fornire alcune informazioni.

  • Come General Type of Mail Configuration sceglieremo SATELLITE.
  • Come System Mail Name possiamo accettare quello proposto o sceglierne uno che non sia il vostro dominio. O meglio… se  avete il dominio mydomain.com potrete mettere smtp.mydomain.com o altri sottodomini, ma non quello di secondo livello poiché Postfix lo riterrebbe autoritativo e quindi mail indirizzate al vostro dominio (ovvero probabilmente il motivo per cui stiamo facendo tutto questo) non arriverebbero.
  • SMTP RELAY HOST: metteremo smtp.gmail.com:587, questo vale anche se avete la vostra casella di dominio ospitata da Google.

Conclusa l’installazione dobbiamo andare a configurare la parte di autenticazione SASL (qui se volete approfondire), con il vostro editor andremo a modificare il /etc/postfix/main.cf di Postfix. In particolare in fondo al file aggiungeremo le seguenti righe:

smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/sasl_password
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous

Come si evince le righe sono piuttosto chiare, ora dovremo andare a creare il file dove mettere le password di accesso all’STMP di Gmail, che non esiste. Quindi con VI creiamo il file /etc/postfix/sasl/sasl_password al cui suo interno metteremo una sola riga:

smtp.gmail.com username:password

Creiamo la lookup table db da postfix stesso

postmap /etc/postfix/sasl/sasl_password

Ovviamente modificate username (la email completa) e password di conseguenza. Siccome sono dati sensibili, sebbene saranno utilizzati criptati, il file potrebbe essere letto, quindi assicuriamoci che possa “maneggiarlo” solo l’utente root e postfix.

chown -R root:postfix /etc/postfix/sasl
chmod 750 /etc/postfix/sasl
chmod 640 /etc/postfix/sasl/sasl_password*

Riavviamo il servizio di Postfix per applicare tutte le modifiche.

sudo service postfix restart

E a questo punto possiamo inviare una mail dal nostro sistema per verificare il buon funzionamento.

echo "invio una mail da ubuntu a gmail" | mail -s "invio test" destinatario@posta

Eventuali problemi possono essere analizzati in /var/log/mail.log e /var/log/mail.err.

In vantaggi di questo sistema sono:

  • La possibilità di avere uno storico della posta inviata dal server direttamente in Gmail alla cartella “posta inviata“.
  • Di avere un sistema abbastanza ermetico, poiché con la modalità SATELLITE di postfix potremo chiudere le porte con il Firewall per il solo invio della posta.
  • Avere un server a costo zero per il relay della posta.
  • Avere un server che non è presente nella medesima server farm, quindi in caso di problemi non ci si deve preoccupare della posta.

Libri che ti consiglio sull'argomento

Alcuni titoli che ho trovato utili come manuale tecnico per questo articolo

Vuoi dire o aggiungere qualcosa?

sezione commenti aperta al pubblico

Non ci sono ancora commenti!

Puoi essere il primo a commentare.

Rispondi

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.