优化 Debian 邮件服务器是一个系统工程,涉及性能、安全、反垃圾、高可用、可维护性等多个方面。下面我按实战顺序给你一个较完整的优化指南,适用于常见组合(Postfix + Dovecot + MySQL/MariaDB + SpamAssassin + ClamAV + DKIM/DMARC)。
apt update && apt upgrade -y
优化内核网络参数(/etc/sysctl.conf):
net.core.somaxconn = 4096
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65535
sysctl -p
/var/mail 或 /home 单独挂载编辑 /etc/postfix/main.cf:
default_process_limit = 100
smtpd_client_connection_count_limit = 20
smtpd_client_connection_rate_limit = 60
smtpd_client_message_rate_limit = 30
queue_minfree = 20971520
maximal_queue_lifetime = 1d
bounce_queue_lifetime = 1d
smtpd_relay_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination
启用 SASL 认证(Dovecot):
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
message_size_limit = 52428800 # 50MB
mailbox_size_limit = 0
/etc/dovecot/conf.d/10-master.conf:
default_process_limit = 200
default_client_limit = 1000
/etc/dovecot/conf.d/20-imap.conf:
mail_max_userip_connections = 20
mail_location = maildir:~/Maildir
protocols = imap
apt install spamassassin spamc
优化规则更新:
sa-update
Postfix 调用:
content_filter = spamassassin
apt install clamav clamav-daemon
⚠️ 注意:ClamAV 非常吃内存,小服务器建议关闭或仅扫描外网邮件。
DNS TXT 记录:
v=spf1 mx ~all
apt install opendkim opendkim-tools
生成密钥并配置:
opendkim-genkey -s mail -d example.com
DNS:
mail._domainkey IN TXT "v=DKIM1; k=rsa; p=..."
_dmarc.example.com IN TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"
apt install certbot
certbot certonly --standalone -d mail.example.com
Postfix:
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_tls_security_level = may
Dovecot:
ssl_cert = </etc/letsencrypt/live/mail.example.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.example.com/privkey.pem
apt install logwatch
/var/log/mail.log 是核心日志。
apt install fail2ban
过滤 Postfix / Dovecot 登录失败。
postqueue -p
postsuper -d ALL
定期清理:
systemctl enable postfix
tmpfs /tmp tmpfs defaults,size=512M 0 0
| 问题 | 排查 |
|---|---|
| 发信慢 | DNS、RBL |
| 收信慢 | Dovecot、磁盘 IO |
| 被当垃圾 | SPF/DKIM/DMARC |
| 被封 IP | 发信频率、黑名单 |
✅ Postfix + Dovecot + MariaDB
✅ SPF + DKIM + DMARC
✅ TLS 强制
✅ Fail2ban + 限流
✅ 不做开放中继
如果你愿意,可以告诉我:
我可以给你一份针对你环境的定制优化方案。