在 Ubuntu 上配置 Dovecot 作为 IMAP/POP3 收件服务,通常和 Postfix(发件)一起使用。下面给你一套从零到可用的完整配置流程(以 Ubuntu 20.04/22.04 为例,Dovecot 2.x)。
sudo apt update
sudo apt install dovecot-core dovecot-imapd dovecot-pop3d
常用组件说明:
dovecot-core:核心dovecot-imapd:IMAP 服务dovecot-pop3d:POP3 服务(可选)Ubuntu 默认使用 Maildir 格式,路径通常是:
/home/<用户名>/Maildir/
检查用户是否存在:
id <用户名>
编辑:
sudo nano /etc/dovecot/dovecot.conf
确保包含:
protocols = imap pop3
listen = *
sudo nano /etc/dovecot/conf.d/10-mail.conf
关键配置:
mail_location = maildir:~/Maildir
⚠️ 如果使用 mbox,则改为:
mail_location = mbox:~/mail:INBOX=/var/mail/%u
sudo nano /etc/dovecot/conf.d/10-auth.conf
启用系统用户认证:
disable_plaintext_auth = no
auth_mechanisms = plain login
包含系统认证文件:
!include auth-system.conf.ext
sudo nano /etc/dovecot/conf.d/10-master.conf
确保 IMAP/POP3 监听正常:
service imap-login {
inet_listener imap {
port = 143
}
}
service pop3-login {
inet_listener pop3 {
port = 110
}
}
✅ 生产环境建议开启 SSL(见下文)
安装证书后:
sudo nano /etc/dovecot/conf.d/10-ssl.conf
ssl = required
ssl_cert = </etc/letsencrypt/live/mail.example.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.example.com/privkey.pem
然后修改端口:
service imap-login {
inet_listener imaps {
port = 993
ssl = yes
}
}
service pop3-login {
inet_listener pop3s {
port = 995
ssl = yes
}
}
sudo chown -R 用户名:用户名 /home/用户名/Maildir
sudo chmod -R 700 /home/用户名/Maildir
sudo systemctl restart dovecot
sudo systemctl enable dovecot
查看状态:
systemctl status dovecot
telnet localhost 143
或加密端口:
openssl s_client -connect localhost:993
| 项目 | 值 |
|---|---|
| IMAP 服务器 | mail.example.com |
| IMAP 端口 | 993(SSL) |
| POP3 服务器 | mail.example.com |
| POP3 端口 | 995(SSL) |
| 用户名 | 系统用户名 |
| 密码 | 系统用户密码 |
sudo tail -f /var/log/mail.log
ls -ld /home/用户名/Maildir
ss -lntp | grep dovecot
| 场景 | 推荐 |
|---|---|
| 发件 | Postfix |
| 收件 | Dovecot |
| Webmail | Roundcube |
| 认证 | 系统用户 / MySQL |
如果你愿意,我可以:
只要告诉我你打算 个人用 / 企业用 / 测试环境 即可。