Installazione server di posta
Istruzioni per installare un server di posta su Devuan 4
Questa guida è stata realizzata utilizzando Devuan 4 (Chimaera) e Dovecot 2.3.13
Salvo se diversamente indicato i comandi devono essere eseguiti con l'utente root o anteponendo il comando sudo (attenzione se vengono usate pipe)
Caratteristiche
Gestione IMAP e POP3 : Dovecot Gestione SMTP : Postfix Configurazione delle caselle di posta con: Mysql e Postfixadmin Certificati: Let's encrypt (certbot) Gestione quota per dominio e per utente Memorizzazione ultimo login Calendario CalDAV e Rubrica CardDAV usando ??? Webmail: Roundcube Filtri Sieve personalizzabili dagli utenti
Convenzioni
- MYSQLHOST = l'host su cui è installato mysql, può essere localhost
- MAILHOST = l'host su cui si installa il server di posta, deve essere un indirizzo raggiungibile da internet (vedere configurazione DNS)
Installazione dei pacchetti
Mysql
Viene usato per gestire la configurazione di domini e utenti tramite postfixadmin.
Postfix
Usato come agente per submission e SMTP. Come submission è configurato in maniera da permettere l'uso solo di mittenti corrispondenti all'autenticazione.
apt-get install postfix-mysql |
Dovecot
apt-get install dovecot-core dovecot-imapd dovecot-pop3 dovecot-lmtpd dovecot-mysql |
Se presente verrà disinstallato Courier, ma i file di configurazione verranno mantenuti.
Sono stati scelti i pacchetti per fornire IMAP, POP3 (si, lo so che è obsoleto, ma lo vogliono...), mailtransfer locale e configurazione su mysql gestita tramite PostfixAdmin.
Configurazione
Autenticazione SASL Postfix con Dovecot
nano /etc/dovecot/conf.d/10-master.conf |
service auth { unix_listener auth-userdb { } # Postfix smtp-auth unix_listener /var/spool/postfix/private/auth { mode = 0660 user = postfix group = postfix } }
nano /etc/postfix/main.cf |
######### # SMTPD # ######### # utilizzo dovecot auth smtpd_sasl_type = dovecot # path del socket di autenticazione fornito da dovecot smtpd_sasl_path = private/auth # abilito l'autenticazione SASL smtpd_sasl_auth_enable = yes # aggiunge l'username dell'utente nell'header delle mail smtpd_sasl_authenticated_header = yes
(nota: aggiungere tutte le altre restrizioni adottate)
Utilizzo dei certificati let's encrypt con Dovecot
Sostituire il certificato autofirmato che è stato generato all'installazione
nano /etc/dovecot/conf.d/10-ssl.conf |
#ssl_cert = </etc/dovecot/private/dovecot.pem #ssl_key = </etc/dovecot/private/dovecot.key ssl_cert = </etc/letsencrypt/live/MAILHOST/fullchain.pem ssl_key = </etc/letsencrypt/live/MAILHOST/privkey.pem
/etc/init.d/dovecot restart |
Per verificare il certificato utilizzato dal server per i vari protocolli eseguire il seguente codice (da un altro host):
echo | openssl s_client -connect MAILHOST:imaps | openssl x509 -noout -text |
echo | openssl s_client -connect MAILHOST:pop3s | openssl x509 -noout -text |
echo | openssl s_client -starttls smtp -connect MAILHOST:submission | openssl x509 -noout -text |
e se abilitato su postfix:
echo | openssl s_client -starttls smtp -connect MAILHOST:smtp | openssl x509 -noout -text |
Fonti utilizzate
in ordine rigorosamente casuale :-)