维护 Ubuntu 邮件服务器是一项系统工程,涉及 系统安全、邮件服务配置、反垃圾/反病毒、监控与备份 等多个方面。下面我按 常见邮件服务器架构(Postfix + Dovecot + MySQL/MariaDB) 给你一个完整、实用的维护指南。
典型组合:
sudo apt update
sudo apt upgrade -y
⚠️ 更新后重启相关服务:
sudo systemctl restart postfix dovecot
systemctl status postfix
systemctl status dovecot
确保状态为 active (running)
tail -f /var/log/mail.log
connection refused → 端口/防火墙问题relay access denied → 开放中继错误bounced → 用户或域名问题sudo ufw allow 25
sudo ufw allow 465
sudo ufw allow 587
sudo ufw allow 143
sudo ufw allow 993
sudo ufw enable
Postfix 配置检查:
postconf | grep mynetworks
✅ 建议:
mynetworks = 127.0.0.0/8
sudo certbot renew
自动续期(已默认配置 cron)
检查证书有效期:
openssl x509 -in /etc/letsencrypt/live/域名/fullchain.pem -noout -dates
更新规则:
sudo sa-update
sudo systemctl restart spamassassin
更新病毒库:
sudo freshclam
定期扫描(可选):
clamscan -r /var/mail
v=spf1 mx ~all
检查服务:
systemctl status opendkim
密钥位置:
/etc/opendkim/keys/
v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com
mysqldump -u root -p mailserver > mailserver.sql
DELETE FROM mail_log WHERE time < NOW() - INTERVAL 30 DAY;
Dovecot 邮箱路径通常为:
/var/mail/vhosts/
查找大邮箱:
du -sh /var/mail/vhosts/*
df -h
du -sh /var/log
mailq
队列过多说明异常:
postsuper -d ALL # 谨慎使用
grep "auth failed" /var/log/mail.log
可配合 fail2ban:
sudo apt install fail2ban
/etc/postfix/etc/dovecot/var/mail示例:
tar czf mail-backup-$(date +%F).tar.gz \
/etc/postfix /etc/dovecot /var/mail
postconf -e "smtpd_client_connection_count_limit = 10"
postconf -e "smtpd_client_connection_rate_limit = 30"
避免被滥用发送垃圾邮件。
| 问题 | 排查 |
|---|---|
| 发不出去 | 检查 25 端口、DNS、SPF |
| 收不到 | 检查 MX、Dovecot |
| 被当垃圾邮件 | SPF/DKIM/DMARC |
| 用户无法登录 | 检查 Dovecot 认证 |
| 项目 | 周期 |
|---|---|
| 系统更新 | 每周 |
| 日志检查 | 每天 |
| 病毒库更新 | 每天 |
| 备份 | 每天 |
| SSL 续期 | 自动 |
如果你愿意,我可以:
✅ 根据你 现有邮件服务器配置 给出定制维护方案
✅ 帮你 排查具体错误日志
✅ 给你一套 自动维护脚本
你可以直接贴出: