- 首页 >
- 问答 >
-
云计算 >
- Debian邮件服务器的SSL证书如何安装
Debian邮件服务器的SSL证书如何安装
小樊
44
2025-12-13 08:33:22
Debian邮件服务器SSL证书安装指南
一 准备与获取证书
- 准备:确保域名解析正确,且防火墙放行用于签发与验证的端口(如 80/443),以便 Certbot 完成域名所有权验证。
- 安装工具:在 Debian 上安装 Certbot。
- 获取证书(Standalone 方式,不与现有 Web 服务冲突):
sudo apt update
sudo apt install certbot
sudo certbot certonly --standalone -d mail.example.com -d example.com
将 mail.example.com 替换为你的邮件服务器域名。证书默认位于 /etc/letsencrypt/live/mail.example.com/,包含 fullchain.pem 与 privkey.pem。
二 配置 Postfix 使用证书
- 推荐启用 TLS 并指定证书路径(Postfix ≥2.3 常用参数):
sudo nano /etc/postfix/main.cf
追加或修改:
smtpd_tls_security_level = may
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.example.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.example.com/privkey.pem
smtpd_use_tls = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
- 可选:使用 Certbot 提供的 Postfix 参数片段(若存在):
sudo postmap /etc/letsencrypt/options-ssl-postfix.conf
- 使配置生效:
sudo systemctl restart postfix
- 说明:若你此前使用独立端口 SMTPS(465),可在 /etc/postfix/master.cf 中启用相应服务并设置 smtpd_tls_wrappermode=yes。
三 配置 Dovecot 使用证书
- 启用 SSL 并指向同一证书(Dovecot 常用配置):
sudo nano /etc/dovecot/dovecot.conf 或 /etc/dovecot/conf.d/10-ssl.conf
设置:
ssl = yes
ssl_cert = </etc/letsencrypt/live/mail.example.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.example.com/privkey.pem
ssl_protocols = TLSv1.2 TLSv1.3
ssl_cipher_list = HIGH:!aNULL:!MD5
- 使配置生效:
sudo systemctl restart dovecot
四 验证与防火墙
- 验证 SMTP Submission/TLS:
openssl s_client -connect mail.example.com:465 -starttls smtp
若看到握手与证书信息,说明 465/SMTP Submission 正常。
- 验证 IMAPS:
openssl s_client -connect mail.example.com:993
- 防火墙放行(示例 UFW):
sudo ufw allow 25/tcp
sudo ufw allow 465/tcp
sudo ufw allow 143/tcp
sudo ufw allow 993/tcp
五 自动续期与常见问题
- 自动续期:
sudo certbot renew --dry-run
若无报错,Certbot 将自动续期;证书续期后,Postfix/Dovecot 会加载新证书(必要时执行 systemctl reload)。
- 常见问题与建议:
- 证书路径务必使用 /etc/letsencrypt/live/你的域名/fullchain.pem 与 privkey.pem,避免仅使用 cert.pem 导致链不完整。
- 若使用 Nginx/Apache,也可用 –nginx/–apache 插件获取证书,再在邮件服务中手动配置证书路径。
- 若端口 80/443 被占用,改用 –standalone 或临时停用占用服务进行签发。
- 避免使用自签名证书用于公网收信,部分服务器会拒收或降低评分。