Ubuntu 邮件服务器接收变慢的排查与加速
一、快速定位延迟来源
postqueue -p 或 mailq,若队列持续增长,多为下游接收、过滤或资源瓶颈所致。tail -f /var/log/mail.log,关注连接建立、EHLO、STARTTLS、邮件投递与过滤阶段是否出现长时间停顿或超时。mtr -rwc 100 对方域名/IP 与 ping,观察丢包与抖动;对外部域名做 dig +short MX 对方域名 验证解析可达。top/htop/sar 观察 CPU、内存、磁盘 I/O;磁盘等待高常见于反病毒/反垃圾扫描或日志写入。二、DNS 与网络优化
/etc/resolv.conf 中配置;必要时为解析设置超时与重试,减少因 DNS 卡顿造成的接收延迟。/etc/sysctl.conf 中启用更合适的 TCP 拥塞控制算法(如 bbr),提升广域网吞吐与稳定性;同时优化网卡队列与 rmem/wmem 等网络参数以减少丢包与重传。三、MTA 与过滤链路调优
四、存储、系统与监控
五、最小化配置示例
myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 启用 postscreen 前置过滤
postscreen_dnsbl_sites =
postscreen_greet_banner = Welcome, please wait...
postscreen_dnsbl_reply_map = static:450 4.7.1 Service temporarily unavailable
# 优化 DNS 与连接
disable_dns_lookups = no
smtp_host_lookup = dns
default_destination_concurrency_limit = 20
smtp_connect_timeout = 30s
smtp_helo_timeout = 30s
smtp_data_done_timeout = 120s
sudo systemctl restart postfixmail_location = maildir:/var/vmail/%d/%n
mail_prefetch_count = 20
imap_compress = yes
sudo systemctl restart dovecot/etc/resolv.conf 配置可用 DNS;在 /etc/sysctl.conf 启用 BBR 等合适拥塞控制并 sysctl -p 生效。