Server di Posta · 3 min read · Oct 05, 2025
Soluzione Completa per Server di Posta con Domini e Utenti Virtuali (Debian Etch, Postfix, Mysql, Dovecot, DSpam, ClamAV, Postgrey, RBL) - Pagina 9
VI. IMAP Insicuro
Quindi ora hai un setup di server di posta piuttosto a prova di proiettile. La posta arriva, viene sottoposta a una varietà di procedure anti-spam e viene controllata per virus prima di essere depositata in modo ordinato nella directory di un utente virtuale sul server interno. Ma… come fanno gli utenti ad accedere alla loro email?
Buona domanda. La risposta varia a seconda di dove si trova l’utente. Per il momento, assumeremo che l’utente sia (A) sulla rete locale (interna), o (B) stia accedendo alla propria email tramite una connessione sicura al server web. Per entrambi i casi, sarà necessario che IMAP sia in esecuzione. Poiché il server postman ha già un server IMAP completamente funzionante installato (Dovecot), utilizziamo quel server per i loro accessi.
Apri il file di configurazione di Dovecot situato in /etc/dovecot/dovecot.conf e fallo apparire come segue. Probabilmente ci sono già molte configurazioni predefinite, quindi probabilmente dovrai solo decommentare alcune sezioni e modificare cose minori.
## File di configurazione di Dovecot
#
base_dir = /var/run/dovecot/
#
# imap imaps pop3 pop3s (usa imaps e pop3s se configurato per SSL)
protocols = imap
#
# Decommenta le dichiarazioni ssl_listen e commenta listen se usi SSL
protocol imap {
listen = *:143
# ssl_listen = *:993
}
#protocol pop3 {
#listen = *:110
# ssl_listen = *:995
#}
#
log_timestamp = "%Y-%m-%d %H:%M:%S "
syslog_facility = mail
#
# Decommenta questi se usi SSL
#ssl_cert_file = /etc/ssl/mycompany/mailserver/mail-cert.pem
#ssl_key_file = /etc/ssl/mycompany/mailserver/mail-key.pem
#ssl_ca_file = /etc/ssl/mycompany/ca/mycompany.pem
#ssl_verify_client_cert = yes
#ssl_parameters_regenerate = 168
#verbose_ssl = no
#
# Dove si trovano le cassette postali
mail_location = maildir:/vmail/%d/%u
#
mail_extra_groups = mail
mail_debug = no
first_valid_uid = 150
last_valid_uid = 150
maildir_copy_with_hardlinks = yes
#
protocol imap {
login_executable = /usr/lib/dovecot/imap-login
mail_executable = /usr/lib/dovecot/imap
imap_max_line_length = 65536
}
#protocol pop3 {
#login_executable = /usr/lib/dovecot/pop3-login
#mail_executable = /usr/lib/dovecot/pop3
#pop3_uidl_format = %08Xu%08Xv
#}
protocol lda {
postmaster_address = [email protected]
sendmail_path = /usr/lib/sendmail
auth_socket_path = /var/run/dovecot/auth-master
}
#
auth_verbose = no
auth_debug = no
auth_debug_passwords = no
#
auth default {
mechanisms = plain
passdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
userdb sql {
args = /etc/dovecot/dovecot-sql.conf
}
user = nobody
socket listen {
master {
path = /var/run/dovecot/auth-master
mode = 0660
user = vmail
group = mail
}
client {
path = /var/spool/postfix/private/auth
mode = 0660
user = postfix
group = postfix
}
}
#
# Se vuoi certificati client, usa queste righe
# ssl_require_client_cert = yes
# ssl_username_from_cert = yes
}NOTA: Non puoi semplicemente copiare la configurazione sopra e aspettarti che funzioni! Dovrai incorporare eventuali modifiche sopra nella tua configurazione.
La configurazione di Dovecot è quasi completa, ma proprio come per la configurazione di Postfix, le impostazioni di MySQL devono essere incorporate.
Apri il file /etc/dovecot/dovecot-sql.conf e assicurati che quanto segue sia presente.
driver = mysql
connect = host=sql-1.internal.example.com dbname=virtual_mail user=vmail_user password=vmail_user_password
# Il nuovo nome per MD5 è MD5-CRYPT quindi potresti dover cambiare questo a seconda della versione
default_pass_scheme = MD5
# Ottieni la cassetta postale
user_query = SELECT '/vmail/%d/%n' AS home, 'maildir:/vmail/%d/%n' AS mail, 150 AS uid, 8 AS gid, CONCAT('dirsize:storage=', quota) AS quota FROM mailbox WHERE username = '%u' AND active = '1'
# Ottieni la password
password_query = SELECT username AS user, password, '/vmail/%d/%n' AS userdb_home, 'maildir:/vmail/%d/%n' AS userdb_mail, 150 AS userdb_uid, 8 AS userdb_gid FROM mailbox WHERE username = '%u' AND active = '1'
# Se usi certificati client per l'autenticazione, commenta quanto sopra e decommenta quanto segue
#password_query = SELECT null AS password, '%u' AS userPoiché abbiamo memorizzato la nostra password MySQL in formato testo semplice in questo documento, vogliamo assicurarci che solo noi possiamo leggerla!
# chmod 600 /etc/dovecot/*.conf
# chown vmail /etc/dovecot/*.confLa configurazione Dovecot Interna/Insicura è ora completata! Procedi e riavvia il servizio dovecot:
# invoke-rc.d dovecot restart… e i tuoi utenti interni/webmail possono ora controllare la posta su postman.internal.example.com
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.