Nullmailer – il postino minimalista

Nullmailer è un MTA (Mail Transfer Agent) minimalista da utilizzare al posto di Exim, Postfix, Sendmail, … nei sistemi embedded tipo Raspeberry Pi e, perché no, anche sul proprio PC Linux. Nullmailer è un MTA di tipo “relay only” ovvero invia tutti i messaggi di posta ad un o più server smtp definiti nella sua configurazione. Nullmailer non può ricevere posta. Se volete trasformare il vostro Rasperry Pi in un server di posta, Nullmailer non è sufficiente!

In questo breve articolo illustro la configurazione di Nullmailer come relay autenticato attraverso Gmail. Potete utilizzare un account Gmail creato ad hoc, oppure, se volete utilizzare il vostro account principale, consiglio di attivare la verifica in due passaggi e di creare una password specifica per Nullmailer. L’utilizzo di Gmail o di qualsiasi altro account di posta con smtp autenticato, rende l’invio delle mail indipendente dal vostro ISP: potete spostare il vostro Rasperry Pi su di un’altra rete e l’invio delle mail continuerà a funzionare.

Le istruzioni sono per Debian e derivate. La configurazione è stata testata con Raspberry Pi  (Raspbian) e  Olimex A10.

Come primo passo è necessario installare Nullmailer:

$ sudo apt-get install nullmailer mailutils

Il pacchetto mailutils contiene il comando mail utile per i test oppure negli shell script.

Durante l’installazione, il wizard vi porrà alcune domande. Potete eseguire nuovamente la configurazione guidata con il comando:

$ sudo dpkg-reconfigure nullmailer

La prima domanda riguarda il “mailname” del vostro sistema. Si tratta del nome che compare dopo la @ negli indirizzi di posta. Nel mio caso il sistema si chiama “Jarvis” e le mail avranno indirizzi del tipo pi@Jarvis, root@Jarvis, … Il file interessato da questa configurazione è /etc/mailname.

Nullmailer Mailname

Ora dovete inserire la configurazione dell’host remoto a cui inviare le mail. Se avete un vostro server smtp, inserite il nome o l’indirizzo ip; nel caso di Gmail la configurazione sarà:

smtp.gmail.com smtp --port=587 --starttls --auth-login --user=<user>@gmail.com --pass=<password>

Questa configurazione è salvata nel file  /etc/nullmailer/remotes. La documentazione di Nullmailer è striminzita: per sapere quali sono tutte le opzioni e i parametri possibili potete usare  il comando:

$ /usr/lib/nullmailer/smtp -h

Nullmailer Smarthost

Il passo seguente è mostrato solo se utilizzate dpkg-reconfigure e non viene visualizzato durante la prima installazione di Nullmailer. Dovete inserire l’indirizzo a  cui inviare tutte le mail destinate agli account locali. Di solito coincide con l’indirizzo Gmail utilizzato al punto precedente. Tutte le mail generate in automatico dal vostro sistema verso account locali (es. cron), verranno girate a questo indirizzo.

Questa configurazione è salvata nel file /etc/nullmailer/adminaddr.

Nullmailer Local Mail

Testiamo la configurazione:

$ date | mail -s TEST pi
$ date | mail -s PROVA user@example.com

Nel primo caso verrà invita una mail all’utente “pi” del vostro sistema,  con oggetto TEST e la data e l’ora corrente come testo del messaggio. La mail verrà automaticamente inviata all’indirizzo configurato precedentemente (adminaddr). Nel  secondo caso verrà inviata una mail all’indirizzo <user@example.com> (mettete un indirizzo valido).

Screnshots: 

IW4DZV Enrico

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *