Installazione e configurazione di Postfix
Consiglio l'utilizzo di un utente non-root, in questa guida utilizzerò il nome utente grok.
Assicuriamoci di aggiornare l'indice dei pacchetti. Aprire il terminale e dare questo comando:
sudo apt-get update
Postfix si trova nei repository ufficiali di Ubuntu, quindi installiamolo utilizzando la variabile di sistema DEBIAN_PRIORITY=low per installare anche i pacchetti addizionali:
sudo DEBIAN_PRIORITY=low apt-get install postfix
Queste sono le informazioni che vi verranno chieste durante l'installazione:
- General type of mail configuration?: Internet Site
- System mail name: esempio.com (Non inserite mail.esempio.com)
- Root and postmaster mail recipient: grok
- Other destinations to accept mail for: $myhostname, esempio.com, mail.esempio.com, localhost.esempio.com, localhost
- Force synchronous updates on mail queue?: No
- Local networks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
- Mailbox size limit: 0
- Local address extension character: +
- Internet protocols to use: all
Se avete bisogno di reinserire queste informazioni, quindi riconfigurare postfix, dare questo comando:
sudo dpkg-reconfigure postfix
Impostiamo la variabile home_mailbox in Maildir/ che andrà a creare una struttura di file e cartelle nella home directory dell'utente utilizzato:
sudo postconf -e 'home_mailbox= Maildir/'
Successivamente impostiamo la posizione della tabella virtual_alias _maps. Questa tabella elabora gli account di posta elettronica. La creiamo in /etc/postfix/virtual.
Utilizziamo questo comando:
sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'
Apriamo il file:
sudo nano /etc/postfix/virtual
Se per esempio volete accettare l'email su [email protected] e [email protected] e volete che queste arrivino all'utente grok, scrivere il file in questo modo:
[email protected] grok
[email protected] grok
Salvate e chiudete il file:
Applichiamo le modifiche in questo modo:
sudo postmap /etc/postfix/virtual
Riavviamo postfix:
sudo systemctl restart postfix
Se avete il firewall abilitato dare questo comando:
sudo ufw allow Postfix
Per assicurarci che le variabili siano impostate in modo corretto, per permettere l'utilizzo di diversi tipi di accesso agli account (ssh, su, sudo etc) dobbiamo impostare le variabili in diversi file.
Da terminale dare questo comando:
echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh
Per eseguire le variabili nella sessione corrente dare questo comando:
source /etc/profile.d/mail.sh
Installazione del client email S-Nail
S-Nail è un package presente di default su Ubuntu per gestire correttamente il formato Maildir.
Per installarlo dare questo comando:
sudo apt-get install s-nail
Apriamo il file di configurazione di s-nail:
sudo nano /etc/s-nail.rc
Aggiungere alla fine del file queste righe:
set emptystart
set folder=Maildir
set record=+sent
Salvate e chiudete il file.
Testiamo il client
Inviamo un email a noi stessi per testare il client e per creare la struttura Maildir nella nostra home.
Da terminale:
echo 'init' | mail -s 'init' -Snorecord grok
Dovreste ricevere una risposta simile a questa:
Can't canonicalize "/home/grok/Maildir"
Vedrete questa risposta solamente dopo il primo messaggio, è normale.
Possiamo controllare adesso se la struttura all'interno di Maildir si è generata correttamente:
ls -R ~/Maildir
Dovreste ricevere una risposta simile a questa:
/home/grok/Maildir/:
cur new tmp
/home/grok/Maildir/cur:
/home/grok/Maildir/new:
23452345.IAUas876sdAS76D.mail.esempio.com
/home/grok/Maildir/tmp:
It looks like our mail has
been delivered.
Gestiamo l'email con il Client
Per controllare le nostre mail, da terminale scrivere:
mail
Dovreste vedere la vostra email ricevuta:
s-nail version v14.x.x. Type ? for help.
"/home/grok/Maildir": 1 message 1 new
N 1 [email protected] Wed June 20 19:00 14/369
init
Premere INVIO per leggere l'email
[-- Message 1 -- 14 lines, 369 bytes --]:
From [email protected] Wed June 20 19:00:00 1969
Date: 11 May 2017 15:05:22 -0400
To: [email protected]
Subject: init
Message-Id: [email protected]
From: [email protected]
init
Per tornare indietro premere h poi invio, per uscire q.
Possiamo testare l'invio di email scrivendo il testo in un editor di testo.
Da terminale:
nano ~/messaggio
Ciao,
Email di prova, file di testo!
Da terminale:
cat ~/messaggio | mail -s 'Oggetto dell'email' -r from_field_account [email protected]
Le opzioni sono:
- -s: L'oggetto dell'email.
- -r: Opzionale è possibile cambiare il campo From. Di default verrà utilizzato il nome utente con il quale siete connessi. L'opzione -r ti permette di sovrascrivere il valore di default.
- [email protected]: L'indirizzo email a cui inviare l'email.
Per visualizzare i messaggi inviati, da terminale:
file +sent
L'installazione è terminata.