Se hai un account Gmail, puoi configurare il tuo MTA per inoltrare la posta in uscita tramite Gmail. Ciò ti offre il vantaggio dell'affidabilità e della solida infrastruttura di Gmail e ti offre un mezzo semplice per inviare e-mail dalla riga di comando.
In questo tutorial, useremo Postfix come nostro MTA. Postfix è un agente di trasferimento della posta gratuito, open source, gestito attivamente e altamente sicuro.
In ogni passaggio, tratteremo le istruzioni specifiche per i seguenti sistemi operativi:
- Debian 9
- Ubuntu 18.04 LTS
- CentOS 7
- OpenSUSE Leap 15.0
- Arch Linux 01.03.2019
- FreeBSD 12.0
Installeremo anche mailutils /mailx in modo che possiamo inviare un'e-mail di prova. Ove necessario, installeremo librerie SASL supplementari.
Tutti i comandi che iniziano con # richiedono i privilegi di root.
1. Installa il software richiesto
Debian, Ubuntu:
apt-get update && apt-get install postfix mailutils
Quando viene richiesto "Tipo generale di configurazione della posta", scegli Sito Internet .
Quando viene richiesto un "Nome e-mail", scegli un nome host da utilizzare nelle intestazioni delle e-mail come origine delle tue e-mail. È preferibile un nome di dominio completo, ma l'utilizzo del nome host semplice della tua macchina va bene. Indipendentemente da ciò che inserisci qui, il tuo indirizzo di ritorno apparirà ai destinatari come il tuo indirizzo Gmail.
È possibile che venga richiesto di impostare il "Destinatario della posta principale e postmaster". Inserisci radice o un altro utente che dovrebbe ricevere le notifiche del sottosistema di posta.
Per qualsiasi altro prompt, puoi scegliere i valori predefiniti.
Fedora:
dnf update && dnf install postfix mailx
CentOS:
yum update && yum install postfix mailx cyrus-sasl cyrus-sasl-plain
OpenSUSE:
zypper update && zypper install postfix mailx cyrus-sasl
Arch Linux:
pacman -Sy postfix mailutils
FreeBSD:
Compila Postfix dalla raccolta dei port per incorporare il supporto per SASL:
portsnap fetch extract update
cd /usr/ports/mail/postfix
make config
Nelle finestre di configurazione, seleziona Supporto SASL . Tutte le altre opzioni possono rimanere le stesse. Quindi:
make install clean
Mailx può essere installato dal pacchetto binario:
pkg install mailx
2. Configura l'autenticazione di Gmail
Crea o modifica un file di password che verrà utilizzato da Postfix per stabilire l'autenticazione con Gmail. Nelle informazioni di autenticazione sottostanti, sostituisci nome utente con il tuo nome utente Gmail e la password con la tua password Gmail. Se utilizzi un nome di dominio Gmail Apps personalizzato, puoi sostituire gmail.com con il tuo dominio Google Apps.
Il file della password risiederà nella directory di configurazione di Postfix. Il file può essere nominato come preferisci, ma il nome file consigliato è sasl_passwd .
Debian, Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:
I file di configurazione di Postfix risiedono nella directory /etc/postfix . Crea o modifica il file della password:
nano /etc/postfix/sasl_passwd
Aggiungi la riga:
[smtp.gmail.com]:587 [email protected]:password
Salva e chiudi il file. La tua password Gmail è memorizzata come testo normale, quindi rendi il file accessibile solo da root:
chmod 600 /etc/postfix/sasl_passwd
FreeBSD:
I file di configurazione di Postfix risiedono nella directory /usr/local/etc/postfix . Crea o modifica il file della password:
nano /usr/local/etc/postfix/sasl_passwd
Aggiungi la riga:
[smtp.gmail.com]:587 [email protected]:password
Salva e chiudi il file. Rendilo accessibile solo da root:
chmod 600 /usr/local/etc/postfix/sasl_passwd
3. Configura Postfix
Ci sono sei parametri che devono essere impostati nel file di configurazione di Postfix main.cf . I parametri sono:
host di ritrasmissione , che specifica l'host di inoltro della posta e il numero di porta. Il nome host sarà racchiuso tra parentesi per specificare che non è richiesta alcuna ricerca MX.
smtp_use_tls , che abilita (o disabilita) la sicurezza del livello di trasporto.
smtp_sasl_auth_enable , che abilita (o disabilita) l'autenticazione SASL.
smtp_sasl_security_options , che nella configurazione seguente verrà impostato su vuoto, per garantire che non vengano utilizzate opzioni di sicurezza non compatibili con Gmail.
smtp_sasl_password_maps , che specifica il file della password da utilizzare. Questo file verrà compilato e sottoposto a hash da postmap in un passaggio successivo.
file smtp_tls_CA , che specifica l'elenco delle autorità di certificazione da utilizzare durante la verifica dell'identità del server.
Debian, Ubuntu, Arch Linux:
Modifica il file di configurazione principale di Postfix:
nano /etc/postfix/main.cf
Aggiungi o modifica i seguenti valori:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
Salva e chiudi il file.
Fedora, CentOS:
Modifica il file di configurazione principale di Postfix:
nano /etc/postfix/main.cf
Aggiungi o modifica i seguenti valori:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt
Salva e chiudi il file.
OpenSUSE:
Modifica il file di configurazione principale di Postfix:
nano /etc/postfix/main.cf
Aggiungi o modifica i seguenti valori:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/ca-bundle.pem
Salva e chiudi il file.
OpenSUSE richiede anche che il file di configurazione del processo master Postfix master.cf essere modificato. Aprilo per la modifica:
nano /etc/postfix/master.cf
Individua la riga che dice:
#tlsmgr unix - - n 1000? 1 tlsmg
Decommentalo, quindi si legge:
tlsmgr unix - - n 1000? 1 tlsmg
Salva e chiudi il file.
FreeBSD:
Modifica il file di configurazione principale di Postfix:
nano /usr/local/etc/postfix/main.cf
Aggiungi o modifica i seguenti valori:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/usr/local/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/mail/certs/cacert.pem
Salva e chiudi il file.
4. Elabora file password
Usa postmap per compilare ed eseguire l'hashing dei contenuti di sasl_passwd . I risultati verranno archiviati nella directory di configurazione di Postfix nel file sasl_passwd.db .
Debian, Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:
postmap /etc/postfix/sasl_passwd
FreeBSD:
postmap /usr/local/etc/postfix/sasl_passwd
5. Riavvia Postfix
Riavvia il servizio Postfix, rendendo effettive le modifiche.
Debian, Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:
systemctl restart postfix.service
FreeBSD:
Per avviare il servizio Postfix solo per questa sessione:
service postfix onestart
Per avviare Postfix automaticamente all'inizializzazione del sistema, apri /etc/rc.conf per la modifica:
nano /etc/rc.conf
Aggiungi la riga:
postfix_enable=YES
Salva e chiudi il file. Puoi quindi eseguire:
service postfix start
Per avviare Postfix.
6. Abilita "App meno sicure" in Gmail
Per impostazione predefinita, per il tuo account Gmail sono consentiti solo gli accessi più sicuri, come l'accesso a Gmail sul Web. Per consentire le richieste di inoltro, accedi al tuo account Gmail e attiva Consenti app meno sicure .
Per ulteriori informazioni, consulta il documento dell'assistenza Google "Consenti alle app meno sicure di accedere al tuo account".
7. Invia un'e-mail di prova
Prova la tua nuova configurazione inviando un'e-mail utilizzando la posta comando. Corri:
mail -s "Test subject" [email protected]
Ti verrà presentata una riga vuota (o un CC: campo, che puoi ignorare premendo Invio). Digita il corpo del tuo messaggio, premendo Invio per le nuove righe. Quando hai finito di comporre l'email, digita CTRL-D per inviarlo. Per annullare l'email, premi CTRL-C due volte.
Per inviare un'e-mail precomposta, usa il comando:
mail -s "Subject Here" [email protected] < textfile
Dove file di testo è il nome di un file contenente il testo da inviare.
Risoluzione dei problemi
Se non funziona, controlla i log per eventuali errori di Postfix:
Debian:
less /var/log/mail.log
Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:
journalctl
FreeBSD:
less /var/log/maillog
Se ricevi errori di autenticazione da Gmail, verifica che Consenti app meno sicure è attivato nelle impostazioni del tuo account Gmail, come specificato nel passaggio 6.
Verifica che il file della password sasl_passwd esiste e che il suo contenuto sia formattato correttamente, come specificato nel passaggio 2. Se apporti modifiche al file della password, assicurati di ripetere i passaggi 4 e 5 per eseguire l'hashing del nuovo file della password e riavviare Postfix.
Se vedi errori TLS, ricontrolla la configurazione in main.cf come specificato nel passaggio 3. Se apporti modifiche alla configurazione, riavvia Postfix come specificato nel passaggio 5.