====== Dovecot IMAP server ======
Pacchetti installati:
* **dovecot-imapd**
Durante l'installazione viene creato il certificato SSL per il server IMAP, nel file **''/etc/dovecot/dovecot.pem''**, la chiave privata sta invece in **''/etc/dovecot/private/dovecot.pem''**. Se si vogliono usare i certificati di Let's Encrypt, vedere **[[postfix_spamassassin_clamav_dovecot#dovecot_imap_and_pop3|Dovecot IMAP and POP3]]**.
Come fare per:
* Utilizzare le **''$HOME/Maildir/''**.
* Autenticazione **userdb** con indirizzo email invece che Unix user.
* FIXME Possibile fare autenticazione SASL di Postfix sull'autenticazione di Dovecot?
===== Utilizzare le Maildir =====
In **''/etc/dovecot/conf.d/10-mail.conf''** sostituire la configurazione ''mbox'' con:
mail_location = maildir:~/Maildir
Dopo la modifica è sufficiente riavviare **systemctl reload dovecot**.
===== Autenticazione =====
L'autenticazione può avvenire con diversi sistemi, la configurazione Debian prepara tre file, di cui solo uno attivo in modo predefinito: **''auth-system.conf.ext''**; gli altri metodi previsti sono ''auth-passwdfile.conf.ext'' e ''auth-checkpassword.conf.ext''.
Quale metodo attivare è indicato in **''/etc/dovecot/conf.d/10-auth.conf''** (togliere il segno di commento agli include), è possibile attivarne più di uno contemporaneamente.
==== auth-system.conf.ext ====
La configurazione predefinita, in realtà si appoggia su PAM per l'autenticazione (vedere ''/etc/pam.d/dovecot'') e sugli utenti di sistema (NSS, /etc/passwd, o simili) per le informazioni utente:
passdb {
driver = pam
}
userdb {
driver = passwd
}
==== auth-passwdfile.conf.ext ====
Questo metodo utilizza il file **''/etc/dovecot/users''** sia per le password che per le informazioni utente.
passdb {
driver = passwd-file
args = scheme=CRYPT username_format=%u /etc/dovecot/users
}
userdb {
driver = passwd-file
args = username_format=%u /etc/dovecot/users
}
Nella configurazione predefinita ci si aspetta un file di questo tipo, con le shadow password di sistema e la crittografia opportuna. Il nome utente può essere l'indirizzo di posta elettronica (o altro) al posto del login di sistema:
niccolo@example.org:$6$.p5FtJ...:1000:1000::/home/niccolo::
FIXME Come ottimizzare l'accesso sequenziale al file di testo?
==== auth-checkpassword.conf.ext ====