Server di Posta · 1 min read · Oct 06, 2025
Soluzione Completa per Server di Posta con Domini e Utenti Virtuali (Debian Etch, Postfix, Mysql, Dovecot, DSpam, ClamAV, Postgrey, RBL) - Pagina 13
C. Certificati client e server firmati da CA
Se desideri utilizzare certificati client firmati da CA, dovrai compiere ulteriori passi, sia in Postfix che in Dovecot per farlo funzionare. Se vuoi che i nomi utente siano presi dal certificato stesso, attualmente devi impostare il nome comune sul nome utente, ad esempio [email protected], che è stato utilizzato in questo documento.
1. Informare Postfix sui Certificati
In Postfix, puoi utilizzare una directory di certificati CA, o un file composito con tutti i certificati concatenati insieme. Useremo la forma concatenata, poiché è ciò che Dovecot si aspetta.
# postconf -e 'smtpd_tls_CAfile = /etc/ssl/example.com/ca/all.pem'2. Informare Dovecot sui Certificati
In Dovecot, devi avere la CRL insieme al certificato affinché l’autenticazione funzioni. Le direttive stesse sono le seguenti.
/etc/dovecot/dovecot.conf[...]
ssl_ca_file = /etc/ssl/example.com/ca/all.pem
ssl_verify_client_cert = yes
ssl_require_client_cert = yes
ssl_username_from_cert = yes
[...] NOTA: Dovrai anche cambiare la password_query con quella commentata in /etc/dovecot/dovecot-sql.conf
Attenzione: Se stai eseguendo Dovecot release candidate 28 o versioni precedenti, il server non invierà l’elenco dei nomi CA accettati, il che potrebbe impedire ai client con più certificati client di connettersi. Si prega di aggiornare o installare questa patch.
3. Concatenare file
Se hai diversi CA e CRL, potrebbe essere difficile concatenarli ogni volta, quindi è stato creato un piccolo script che lo farà per te. Basta metterlo nella tua directory /etc/ssl/example.com/ca/ e eseguirlo. Creerà un all.pem con tutti i certificati e tutte le CRL.
make.sh:#!/bin/bash
rm all.pem 2> /dev/null
cat *.pem *.crl > all.pem4. Impostazioni TLS di Postfix
Come ho detto prima, ci sono alcune impostazioni in Postfix che devono essere modificate, quindi modifichiamo main.cf:
# postconf -e 'smtpd_tls_ask_ccert = yes'
# postconf -e 'smtpd_tls_req_ccert = no'
# postconf -e 'smtpd_recipient_restrictions = permit_tls_all_clientcerts, reject'Ora dovresti avere un server di posta pronto per l’azienda con certificati client.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.