Ricerca nel sito web

Come impostare il server di posta Postfix (SMTP) utilizzando la configurazione client null - Parte 9


Indipendentemente dai numerosi metodi di comunicazione online disponibili oggi, la posta elettronica rimane un modo pratico per recapitare messaggi da un capo all'altro del mondo o a una persona seduta nell'ufficio accanto al nostro.

L'immagine seguente illustra il processo di trasporto della posta elettronica a partire dal mittente fino a quando il messaggio raggiunge la casella di posta del destinatario:

Per rendere tutto ciò possibile, dietro le quinte accadono diverse cose. Affinché un messaggio e-mail venga recapitato da un'applicazione client (come Thunderbird, Outlook o servizi di webmail come Gmail o Yahoo! Mail) a un server di posta, e da lì al server di destinazione e infine al destinatario previsto, in ciascun server deve essere attivo un servizio SMTP (Simple Mail Transfer Protocol).

Questo è il motivo per cui in questo articolo spiegheremo come configurare un server SMTP in RHEL 7 dove vengono inoltrate le email inviate dagli utenti locali (anche ad altri utenti locali) a un server di posta centrale per un accesso più semplice.

Nei requisiti dell'esame questa è chiamata configurazione client nullo.

Il nostro ambiente di test sarà costituito da un server di posta di origine e da un server di posta centrale o Relayhost.


Original Mail Server: (hostname: box1.mydomain.com / IP: 192.168.0.18) 
Central Mail Server: (hostname: mail.mydomain.com / IP: 192.168.0.20)

Per la risoluzione dei nomi utilizzeremo il noto file /etc/hosts su entrambi i box:


192.168.0.18    box1.mydomain.com       box1
192.168.0.20    mail.mydomain.com       mail

Considerazioni sull'installazione di Postfix e Firewall/SELinux

Per iniziare, dovremo (in entrambi i server):

1. Installa Postfix:


yum update && yum install postfix

2. Avvia il servizio e abilitane l'esecuzione ai riavvii futuri:


systemctl start postfix
systemctl enable postfix

3. Consenti il traffico di posta attraverso il firewall:


firewall-cmd --permanent --add-service=smtp
firewall-cmd --add-service=smtp

4. Configura Postfix su box1.miodominio.com.

Il file di configurazione principale di Postfix si trova in /etc/postfix/main.cf. Questo file stesso è un'ottima fonte di documentazione poiché i commenti inclusi spiegano lo scopo delle impostazioni del programma.

Per brevità, mostriamo solo le righe che devono essere modificate (sì, devi lasciare vuoto miadestinazione nel server di origine; altrimenti le email verranno archiviate localmente anziché in un server di posta centrale che è ciò che realmente vogliamo):


myhostname = box1.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = loopback-only
mydestination =
relayhost = 192.168.0.20

5. Configura Postfix su mail.miodominio.com.


myhostname = mail.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 192.168.0.0/24, 127.0.0.0/8

E imposta il valore booleano SELinux correlato su true in modo permanente se non è già stato fatto:


setsebool -P allow_postfix_local_write_mail_spool on

Il booleano SELinux riportato sopra consentirà a Postfix di scrivere nello spool di posta nel server centrale.

5. Riavvia il servizio su entrambi i server affinché le modifiche abbiano effetto:


systemctl restart postfix

Se Postfix non si avvia correttamente, puoi utilizzare i seguenti comandi per risolvere il problema.


systemctl –l status postfix
journalctl –xn
postconf –n

Testare i server di posta Postfix

Per testare i server di posta, puoi utilizzare qualsiasi Mail User Agent (più comunemente noto come MUA in breve) come mail o mutt.

Poiché mutt è uno dei miei preferiti, lo userò in box1 per inviare un'e-mail all'utente tecmint utilizzando un file esistente (mailbody .txt) come corpo del messaggio:


mutt -s "Part 9-RHCE series" [email  < mailbody.txt

Ora vai al server di posta centrale (mail.miodominio.com), accedi come utente tecmint e controlla se l'email è stata ricevuta:


su – tecmint
mail

Se l'e-mail non è stata ricevuta, controlla lo spool di posta di root per un avviso o una notifica di errore. Potresti anche voler assicurarti che il servizio SMTP sia in esecuzione su entrambi i server e che la porta 25 sia aperta nel server di posta centrale utilizzando il comando nmap:


nmap -PN 192.168.0.20

Riepilogo

Configurare un server di posta e un host di inoltro come mostrato in questo articolo è una competenza essenziale che ogni amministratore di sistema deve possedere e rappresenta la base per comprendere e installare un sistema più complesso scenario come un server di posta che ospita un dominio attivo per diversi (anche centinaia o migliaia) di account di posta elettronica.

(Tieni presente che questo tipo di configurazione richiede un server DNS, che non rientra nell'ambito di questa guida), ma puoi utilizzare il seguente articolo per configurare il server DNS:

  1. Configura la cache solo del server DNS in CentOS/RHEL 07

Infine, ti consiglio vivamente di acquisire familiarità con il file di configurazione di Postfix (main.cf) e la pagina man del programma. In caso di dubbi, non esitare a scriverci utilizzando il modulo sottostante o utilizzando il nostro forum, Linuxsay.com, dove riceverai un aiuto quasi immediato da esperti Linux di tutto il mondo.