GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare e configurare Postfix su Ubuntu 20.04

In questa guida impareremo come installare e configurare Postfix su un server Ubuntu 20.04. Useremo s-nail (un Mail User Agent – ​​MUA) per verificare che Postfix sia in grado di instradare correttamente la posta.

Saremo in grado di far funzionare Postfix con alcune funzionalità di posta elettronica essenziali. Non avrai un server di posta elettronica completo entro la fine di questa guida, ma avrai alcuni dei componenti fondamentali di tale configurazione per aiutarti a iniziare.

Prerequisiti

Per seguire questa guida per installare e configurare Postfix, devi prima avere quanto segue:

  • Un server Ubuntu 20.04 che funge da server Postfix
  • Un nome di dominio completamente qualificato puntato al tuo server Ubuntu 20.04.

Tieni presente che questo tutorial presuppone che tu stia configurando un host con l'FQDN di mail.citizix.com . Ove necessario, assicurati di modificare citizix.commail.citizix.com per riflettere il tuo nome di dominio completo.

Passaggio 1:assicurati che il tuo server sia aggiornato

Prima di procedere, assicurarsi che il server abbia aggiornato i pacchetti. Usa questo comando per ottenere ciò:

sudo apt update
sudo apt -y upgrade

Fase 2:installazione di Postfix

Postfix è incluso nei repository Ubuntu predefiniti come postfix . Possiamo installarlo con APT.

Nota che qui passiamo il DEBIAN_PRIORITY=low variabile ambientale in questo comando di installazione. Ciò farà sì che il processo di installazione ti chieda di configurare alcune opzioni aggiuntive:

sudo DEBIAN_PRIORITY=low apt install postfix

Questo processo di installazione aprirà una serie di prompt interattivi. Utilizza le seguenti informazioni per compilare i tuoi prompt:

  • Tipo generale di configurazione della posta? :per questo, scegli Sito Internet poiché soddisfa le nostre esigenze di infrastruttura.
  • Nome e-mail di sistema :questo è il dominio di base utilizzato per costruire un indirizzo e-mail valido quando viene fornita solo la parte dell'account dell'indirizzo. Ad esempio, supponiamo che il nome host del tuo server sia mail.citizix.com . Probabilmente vorrai impostare il nome della posta di sistema su citizix.com in modo che, dato il nome utente user1 , Postfix utilizzerà l'indirizzo [email protected]citizix.com .
  • Destinatario della posta root e postmaster :questo è l'account Linux a cui verrà inoltrata la posta indirizzata a [email protected][email protected] . Usa il tuo account principale per questo. In questo caso di esempio, amministratore .
  • Altre destinazioni per cui accettare la posta :Definisce le destinazioni di posta che questa istanza di Postfix accetterà. Se hai bisogno di aggiungere altri domini che questo server sarà responsabile della ricezione, aggiungili qui. In caso contrario, l'impostazione predefinita sarà sufficiente.
  • Forzare aggiornamenti sincroni sulla coda di posta? :poiché probabilmente stai utilizzando un filesystem con journal, accetta No qui.
  • Reti locali :Questo è un elenco delle reti per le quali il server di posta è configurato per l'inoltro dei messaggi. L'impostazione predefinita funzionerà per la maggior parte degli scenari. Se scegli di modificarlo, assicurati di essere molto restrittivo per quanto riguarda l'intervallo di rete.
  • Limite dimensioni della casella di posta :può essere utilizzato per limitare la dimensione dei messaggi. Impostandolo su 0 disabilita qualsiasi restrizione di dimensione.
  • Carattere estensione indirizzo locale :questo è il carattere che può essere utilizzato per separare la parte regolare dell'indirizzo da un interno (utilizzato per creare alias dinamici). L'impostazione predefinita, + funzionerà per questo tutorial.
  • Protocolli Internet da utilizzare :scegli se limitare la versione IP supportata da Postfix. Ai fini di questo tutorial, seleziona tutti .

Nota :Se hai bisogno di tornare per modificare queste impostazioni, puoi farlo digitando:

sudo dpkg-reconfigure postfix

I prompt saranno precompilati con le tue risposte precedenti.

Al termine del processo di installazione, sei pronto per apportare alcuni aggiornamenti alla configurazione di Postfix.

Fase 3:Modifica della configurazione di Postfix

Le impostazioni di configurazione di Postfix sono definite in /etc/postfix/main.cf file. Puoi utilizzare il postconf di Postfix comando per interrogare o impostare le impostazioni di configurazione anziché modificare direttamente il file.

Per iniziare, imposta la posizione per la casella di posta del tuo utente Ubuntu non root. In questa guida utilizzeremo la Maildir format, che separa i messaggi in singoli file che vengono quindi spostati tra le directory in base all'azione dell'utente. L'opzione alternativa non trattata in questa guida è la mbox format, che memorizza tutti i messaggi in un unico file.

Imposta il home_mailbox variabile in Maildir/ . Successivamente, creerai una struttura di directory con quel nome all'interno della home directory del tuo utente. Configura home_mailbox digitando:

sudo postconf -e 'home_mailbox= Maildir/'

Quindi, imposta la posizione di virtual_alias_maps tabella, che associa account di posta elettronica arbitrari agli account di sistema Linux. Esegui il comando seguente, che associa la posizione della tabella a un file di database hash denominato /etc/postfix/virtual :

sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'

Ora che hai definito la posizione del file delle mappe virtuali nel tuo main.cf file, puoi creare il file stesso e iniziare a mappare gli account di posta elettronica sugli account utente sul tuo sistema Linux. Crea il file con il tuo editor di testo preferito; in questo esempio utilizzeremo vim :

sudo vim /etc/postfix/virtual

Elenca tutti gli indirizzi per i quali desideri accettare e-mail, seguiti da uno spazio bianco e dall'utente Linux a cui desideri che la posta venga recapitata.

Ad esempio, se desideri accettare l'e-mail all'indirizzo [email protected] e[email protected] e vorrei che tali email venissero consegnate all'amministratore Utente Linux, puoi impostare il tuo file in questo modo:/etc/postfix/virtual

[email protected] admin
[email protected] admin

Dopo aver mappato tutti gli indirizzi agli account del server appropriati, salva e chiudi il file.

Applicare la mappatura digitando:

sudo postmap /etc/postfix/virtual

Riavvia il processo di Postfix per assicurarti che tutte le modifiche siano state applicate:

sudo systemctl restart postfix

Se hai installato e abilitato il firewall ufw, puoi consentire le connessioni al servizio digitando:

sudo ufw allow Postfix

Fase 3:installazione del client di posta e inizializzazione della struttura di Maildir

Per interagire con la posta in consegna, questo passaggio ti guiderà attraverso il processo di installazione di s-nail pacchetto. Questa è una variante ricca di funzionalità di BSD xmail client in grado di gestire correttamente il formato Maildir.

Prima di installare il client, tuttavia, sarebbe prudente assicurarsi di avere MAIL la variabile di ambiente è impostata correttamente. s-nail cercherà questa variabile per capire dove trovare la posta per il tuo utente.

Per garantire che il MAIL viene impostata indipendentemente da come accedi al tuo account, sia tramite sshsusu -sudo , ad esempio, dovrai impostare la variabile in /etc/bash.bashrc file e aggiungilo a un file all'interno di /etc/profile.d per assicurarti che sia impostato per tutti gli utenti per impostazione predefinita.

Per aggiungere la variabile a questi file, digita:

echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh

Per leggere la variabile nella sessione corrente, procurati /etc/profile.d/mail.sh file:

source /etc/profile.d/mail.sh

Al termine, installa s-nail client di posta elettronica con APT:

sudo apt install s-nail

Prima di eseguire il client, è necessario modificare alcune impostazioni. Apri il /etc/s-nail.rc file nel tuo editor:

sudo vim /etc/s-nail.rc

Nella parte inferiore del file, aggiungi le seguenti opzioni:/etc/s-nail.rc

. . .
set emptystart
set folder=Maildir
set record=+sent

Ecco cosa fanno queste linee:

  • set emptystart :consente al client di aprire anche con una casella di posta vuota
  • set folder=Maildir :imposta la Maildir directory nella folder interna variabile
  • set record=+sent crea un sent mbox per memorizzare la posta inviata all'interno della directory impostata come folder variabile, in questo caso Maildir

Salva e chiudi il file quando hai finito. Ora sei pronto per inizializzare la struttura Maildir del tuo sistema.

Un modo rapido per creare la struttura Maildir all'interno della tua home directory è inviarti un'email con il s-nail comando. Perché il sent il file sarà disponibile solo una volta creata la Maildir, dovresti disabilitare la scrittura su di essa per questa e-mail iniziale. Fallo passando il -Snorecord opzione.

Invia l'email collegando una stringa a s-nail comando. Modifica il comando per contrassegnare il tuo utente Linux come destinatario:

echo 'init' | s-nail -s 'init' -Snorecord admin

Puoi verificare che la directory sia stata creata cercando il tuo ~/Maildir directory:

ls -R ~/Maildir

Vedrai che la struttura della directory è stata creata e che un nuovo file di messaggio è in ~/Maildir/new directory:

$ ls -R ~/Maildir
/home/ubuntu/Maildir:
cur  new  tmp

/home/ubuntu/Maildir/cur:

/home/ubuntu/Maildir/new:
1643972360.V10301Ifbca3M171366.dev-ubuntusrv.inv.re  1643972375.V10301Ifbca5M242683.dev-ubuntusrv.inv.re

/home/ubuntu/Maildir/tmp:

Ora che la struttura della directory è stata creata, sei pronto per testare il s-nail client visualizzando init messaggio che hai inviato e inviando un messaggio a un indirizzo email esterno.

Fase 4:testare il client

Per aprire il client, esegui s-nail comando:

s-nail

Nella tua console vedrai una rudimentale casella di posta con init messaggio in attesa:

$ s-nail
s-nail version v14.9.15.  Type `?' for help
/home/admin/Maildir: 1 messages 1 new
▸N  1 Ubuntu             2022-02-04 10:59   14/432   init
?

Premi ENTER per visualizzare il messaggio:

[-- Message  1 -- 14 lines, 432 bytes --]:
From [email protected] Fri Feb  4 10:59:35 2022
Date: Fri, 04 Feb 2022 10:59:35 +0000
To: [email protected]
Subject: init
Message-Id: <[email protected]>
From: Ubuntu <[email protected]>

init

Puoi tornare all'elenco dei messaggi digitando h , quindi ENTER :

h
▸R  1 Ubuntu             2022-02-04 10:59   14/432   init

Nota che il messaggio ora ha uno stato di R , indicando che è stato letto.

Poiché questo messaggio non è molto utile, puoi eliminarlo premendo d , quindi ENTER :

d

Per tornare al terminale, digita q e poi ENTER :

q

Come test finale, controlla se s-nail è in grado di inviare correttamente i messaggi di posta elettronica. Per fare ciò, puoi reindirizzare il contenuto di un file di testo nella s-nail processo, come hai fatto con init messaggio che hai inviato nel passaggio precedente.

Inizia scrivendo un messaggio di prova in un editor di testo:

vim ~/test_message

Dentro, inserisci del testo che desideri inviare:

Hello,

This is a test.  Please confirm receipt!

Salva e chiudi il file dopo aver scritto il tuo messaggio.

Quindi, usa il cat comando per reindirizzare il messaggio a s-nail processi. Puoi farlo con il seguente esempio, che utilizza queste opzioni:

  • -s :Definisce la riga dell'oggetto del messaggio e-mail
  • -r :una modifica facoltativa al campo "Da:" dell'e-mail. Per impostazione predefinita, l'utente Linux a cui hai effettuato l'accesso verrà utilizzato per popolare questo campo. Il -r l'opzione ti consente di sovrascriverlo con un indirizzo valido, come uno di quelli che hai definito in /etc/postfix/virtual file. Per illustrare, il comando seguente utilizza [email protected]

Inoltre, assicurati di modificare[email protected] a un indirizzo email valido a cui hai accesso:

cat ~/test_message | s-nail -s 'Test email subject line' -r [email protected] [email protected]

Quindi, vai alla posta in arrivo dell'indirizzo e-mail a cui hai inviato il messaggio. Vedrai il tuo messaggio in attesa lì quasi immediatamente.

Nota :se il messaggio non è nella tua casella di posta, potrebbe essere stato recapitato nella tua cartella Spam.

Puoi visualizzare i messaggi inviati all'interno del tuo s-nail cliente. Riavvia il client interattivo:

s-nail

Dal client di posta elettronica, visualizza i messaggi inviati digitando:

file +sent

Copia

Vedrai un output come questo:

$ s-nail
s-nail version v14.9.15.  Type `?' for help
/home/admin/Maildir: 0 messages
No more mail.
? file +sent
+[/home/admin/Maildir/]sent: 1 message 1 new
▸N  1 [email protected] 2022-02-04 11:07   12/291   Test email subject line
?

Puoi gestire la posta inviata utilizzando gli stessi comandi che utilizzi per la posta in arrivo.

Conclusione

Ora hai Postfix configurato sul tuo server Ubuntu 20.04. La gestione dei server di posta elettronica può essere un compito difficile per i nuovi amministratori di sistema, ma con questa configurazione dovresti avere sufficienti funzionalità di posta elettronica MTA per iniziare.


Ubuntu
  1. Come installare e configurare Redis su Ubuntu 18.04

  2. Come installare e configurare Redmine su Ubuntu 18.04

  3. Come installare e configurare Samba su Ubuntu 18.04

  4. Come installare e configurare Redis su Ubuntu 20.04

  5. Come installare e configurare Postfix

Come installare e configurare Postfix su Debian

Come installare e configurare OpenVAS 9 su Ubuntu

Come installare e configurare Redis in Ubuntu 20.04

Come installare e configurare Neo4j su Ubuntu 20.04

Come installare Postfix Mail Server su Ubuntu 20.04

Come installare e configurare Ubuntu SDK in Ubuntu 16.04 e 14.04