温馨提示×

Ubuntu邮件服务器怎么加密

小樊
35
2026-07-31 12:25:01
栏目: 云计算

在 Ubuntu 上搭建加密的邮件服务器,核心目标是:
传输加密(SMTP / IMAP / POP3)
身份认证加密
防止明文密码和数据泄露

下面按必须 → 推荐 → 进阶给你一个完整、可落地的方案。


一、基础架构(先选软件)

常见组合(推荐):

功能 软件
SMTP(发信) Postfix
IMAP / POP3(收信) Dovecot
用户认证 Dovecot SASL
加密证书 Let’s Encrypt

二、开启传输加密(最关键)

1️⃣ 申请免费 SSL 证书(必须)

sudo apt install certbot
sudo certbot certonly --standalone -d mail.example.com

证书路径:

/etc/letsencrypt/live/mail.example.com/
    fullchain.pem
    privkey.pem

⚠️ 邮件服务器必须使用 真实域名


三、Postfix 加密配置(SMTP)

1️⃣ 启用 TLS(强制加密)

编辑:

sudo nano /etc/postfix/main.cf

添加或修改:

# TLS 证书
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.example.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.example.com/privkey.pem

# 启用 TLS
smtpd_use_tls = yes
smtpd_tls_auth_only = yes

# 加密等级
smtpd_tls_security_level = encrypt
smtpd_tls_loglevel = 1

# 端口
smtpd_tls_received_header = yes

2️⃣ 提交端口(587)加密发信(推荐)

编辑:

sudo nano /etc/postfix/master.cf

确保有:

submission inet n       -       y       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_tls_auth_only=yes

重启:

sudo systemctl restart postfix

✅ 效果:

  • 25 端口:服务器之间加密
  • 587 端口:客户端 必须 STARTTLS

四、Dovecot 加密(IMAP / POP3)

1️⃣ 启用 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

2️⃣ 禁用明文登录

编辑:

sudo nano /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = yes
auth_mechanisms = plain login

3️⃣ IMAPS / POP3S(推荐)

确保监听:

protocols = imap pop3

端口:

  • IMAP:143 → STARTTLS
  • IMAPS:993(SSL)
  • POP3:110 → STARTTLS
  • POP3S:995(SSL)

重启:

sudo systemctl restart dovecot

五、防止明文密码(非常重要)

✅ 必须做到:

  • SMTP:587 + STARTTLS
  • IMAP:143 + STARTTLS 或 993 SSL
  • 禁止 25 端口直接登录
  • 禁止明文密码

六、邮件服务器之间加密(MTA-STS)

防止中间人攻击(进阶)

1️⃣ 开启 Opportunistic TLS

Postfix 默认支持:

smtp_tls_security_level = may

2️⃣ 启用 MTA-STS(可选但推荐)

  • 发布 DNS 策略
  • 强制 TLS

适合企业级安全


七、防火墙 & DNS 检查

开放端口

sudo ufw allow 25
sudo ufw allow 587
sudo ufw allow 465
sudo ufw allow 143
sudo ufw allow 993
sudo ufw allow 995

DNS 记录

  • A / MX
  • PTR(反向解析)
  • SPF / DKIM / DMARC

八、测试加密是否成功

1️⃣ 测试 SMTP TLS

openssl s_client -connect mail.example.com:587 -starttls smtp

2️⃣ 测试 IMAP SSL

openssl s_client -connect mail.example.com:993

3️⃣ 在线检测

  • https://www.checktls.com
  • https://internet.nl/mail/

九、常见错误

❌ 用自签证书 → 客户端不信任
❌ 25 端口允许明文登录
❌ 忘了开 587
❌ 证书过期(Let’s Encrypt 90 天)


十、总结(最简安全配置)

Let’s Encrypt 证书
SMTP 587 + STARTTLS
IMAP 993 / POP3 995 SSL
禁止明文认证
Postfix + Dovecot


如果你愿意,我可以:

  • ✅ 给你 一步一步完整安装脚本
  • ✅ 针对 企业 / 个人 / 内网 定制方案
  • ✅ 帮你排查 现有服务器是否加密

你现在用的是 Postfix + Dovecot 吗?还是别的?

0