Introduzione
Postfix è un agente di trasferimento di posta (MTA), un’applicazione utilizzata per inviare e ricevere e-mail. In questo tutorial, installeremo e configureremo Postfix in modo che possa essere utilizzato per inviare e — mail solo da applicazioni locali, ovvero quelle installate sullo stesso server su cui Postfix è installato.
Perché vorresti farlo?
Se stai già utilizzando un provider di posta elettronica di terze parti per l’invio e la ricezione di e-mail, non è necessario eseguire il proprio server di posta., Tuttavia, se si gestisce un server cloud su cui sono state installate applicazioni che devono inviare notifiche e-mail, l’esecuzione di un server SMTP locale, solo per l’invio è una buona alternativa all’utilizzo di un provider di servizi e-mail di terze parti o all’esecuzione di un server SMTP completo.
In questo tutorial, imparerai come installare e configurare Postfix come server SMTP di sola invio.
Prerequisiti
Per seguire questo tutorial, è necessario:
-
Una goccia di Ubuntu 16.04 configurata con Ubuntu 16.,04 guida all’installazione iniziale, inclusa la creazione di un utente sudo non root
-
Un nome di dominio valido, come
example.com
, che punta al server. Puoi impostarlo seguendo questo tutorial sul nome host
Nota che il nome host del tuo server deve corrispondere a questo dominio o sottodominio. È possibile verificare il nome host del server digitando hostname
al prompt dei comandi. L’output deve corrispondere al nome che hai dato alla Droplet quando è stata creata.
Fase 1 — Installazione di Postfix
In questa fase, imparerete come installare Postfix., Il modo più efficiente per installare Postfix e altri programmi necessari per testare la posta elettronica è installare il pacchettomailutils
.
In primo luogo, aggiornare il database dei pacchetti:
- sudo apt-get update
Infine, installare Postfix. L’installazione dimailtuils
installerà Postfix così come alcuni altri programmi necessari per il funzionamento di Postfix.
- sudo apt install mailutils
Verso la fine del processo di installazione, ti verrà presentata una finestra che assomiglia esattamente a quella nell’immagine qui sotto. L’opzione predefinita è Sito Internet., Questa è l’opzione consigliata per questo tutorial, quindi premi TAB
, quindi ENTER
.
Dopo di che, si otterrà un’altra finestra, proprio come quella nella prossima immagine. Il nome della posta di sistema dovrebbe essere lo stesso del nome assegnato al server durante la creazione. Se mostra un sottodominio comesubdomain.example.com
, cambialo inexample.com
. Quando hai finito, premi TAB
, quindi ENTER
.,
Dopo che l’installazione è stata completata correttamente, procedere al passaggio due.
Step 2 — Configurazione di Postfix
In questo passaggio, leggerete come configurare Postfix per elaborare le richieste di inviare e-mail solo dal server su cui è in esecuzione, cioè da localhost.
Affinché ciò accada, Postfix deve essere configurato per l’ascolto solo sull’interfaccia di loopback, l’interfaccia di rete virtuale che il server utilizza per comunicare internamente., Per apportare la modifica, apri il file di configurazione Postfix principale usando nano
o il tuo editor di testo preferito.
- sudo nano /etc/postfix/main.cf
Con il file aperto, scorrere verso il basso fino a visualizzare la seguente sezione.
. . .mailbox_size_limit = 0recipient_delimiter = +inet_interfaces = all. . .
Cambia la riga che leggeinet_interfaces = all
ininet_interfaces = loopback-only
.
. . .mailbox_size_limit = 0recipient_delimiter = +inet_interfaces = loopback-only. . .
Un’altra direttiva che è necessario modificare èmydestination
, che viene utilizzato per specificare l’elenco dei domini che vengono consegnati tramite illocal_transport
trasporto di consegna della posta. Per impostazione predefinita, i valori sono simili a questi:
/etc/postfix/main.cf. . .mydestination = $myhostname, example.com, localhost.com, , localhost. . .
I valori predefiniti consigliati per questo scenario sono indicati nel blocco di codice sottostante, quindi modifica il tuo per abbinare:
/etc/postfix/main.cf. . .mydestination = $myhostname, localhost.$mydomain, $mydomain. . .
Salva e chiudi il file.,
Se stai ospitando più domini su un singolo server, anche gli altri domini possono essere passati a Postfix utilizzando la direttivamydestination
. Tuttavia, per configurare Postfix in un modo che si ridimensiona e che non presenta problemi per tale configurazione, sono necessarie configurazioni aggiuntive che esulano dall’ambito di questo articolo.
Infine, riavviare Postfix.,
- sudo systemctl restart postfix
Fase 3 — Collaudo il Server SMTP
In questo passaggio, potrai verificare se Postfix può inviare e-mail a un account di posta esterno utilizzando il mail
comando, che fa parte del mailutils
pacchetto è stato installato nel Passaggio 1.
Per inviare un’e-mail di prova, digita:
- echo "This is the body of the email" | mail -s "This is the subject line" your_email_address
Nell’eseguire i tuoi test, puoi usare il corpo e il testo della riga dell’oggetto così come sono o modificarli a tuo piacimento. Tuttavia, al posto di your_email_address
, utilizzare un indirizzo email valido., La parte di dominio può essere gmail.com
, fastmail.com
, yahoo.com
, o qualsiasi altro provider di servizi di posta elettronica utilizzato.
Ora controlla l’indirizzo email in cui hai inviato il messaggio di prova. Dovresti vedere il messaggio nella tua casella di posta. In caso contrario, controlla la tua cartella spam.
Si noti che con questa configurazione, l’indirizzo nel campo From per le email di test inviate sarà, dove sammy è il nome utente di Linux e la parte del dominio è il nome host del server. Se cambi il tuo nome utente, cambierà anche l’indirizzo From.,
Passo 4 — Inoltro Mail di sistema
L’ultima cosa che vogliamo impostare è l’inoltro, in modo da ottenere e-mail inviate a root sul sistema al vostro personale, indirizzo e-mail esterno.
Per configurare Postfix in modo che le email generate dal sistema vengano inviate al tuo indirizzo email, devi modificare il file/etc/aliases
.
- sudo nano /etc/aliases
Il contenuto completo del file su un’installazione predefinita di Ubuntu 16.04 è il seguente:
# See man 5 aliases for formatpostmaster: root
Con tale impostazione, le e-mail generate dal sistema vengono inviate all’utente root., Quello che vuoi fare è modificarlo in modo che quelle e-mail vengano reindirizzate al tuo indirizzo email. Per farlo, modifica il file in modo che legga:
/etc/aliases# See man 5 aliases for formatpostmaster: rootroot: your_email_address
Sostituisci your_email_address
con il tuo indirizzo email personale. Al termine, salvare e chiudere il file. Affinché la modifica abbia effetto, esegui il seguente comando:
- sudo newaliases
Ora puoi verificare che funzioni inviando un’e-mail all’account root usando:
- echo "This is the body of the email" | mail -s "This is the subject line" root
Dovresti ricevere l’e-mail al tuo indirizzo email. In caso contrario, controlla la tua cartella spam.,
Conclusione
Questo è tutto ciò che serve per impostare un server di posta elettronica di solo invio utilizzando Postfix. Si consiglia di adottare alcune misure aggiuntive per proteggere il dominio dagli spammer.
Se il tuo caso d’uso è ricevere notifiche dal tuo server a un singolo indirizzo, le email contrassegnate come spam sono un problema importante perché puoi inserirle nella whitelist. Tuttavia, se il tuo caso d’uso consiste nell’inviare e-mail a potenziali utenti del sito (ad esempio e-mail di conferma per l’iscrizione a una bacheca), dovresti sicuramente impostare i record SPF e DKIM in modo che le e-mail del tuo server siano più probabilmente considerate legittime.,
-
Come usare un record SPF per prevenire lo spoofing& Migliorare l’affidabilità delle e-mail
-
Come installare e configurare DKIM con Postfix su Debian Wheezy Anche se questo articolo è stato scritto per Debian Wheezy, gli stessi passaggi si applicano per Ubuntu 16.04.
Se configurato correttamente, questo rende difficile inviare spam con un indirizzo che sembra provenire dal tuo dominio. Fare questi passaggi di configurazione aggiuntivi renderà anche più probabile che i provider di posta comuni vedano le e-mail dal tuo server come legittime.