1.
准备与前置条件
选择阿里云新加坡地域的ECS实例(建议至少2核4G),购买弹性公网IP(EIP)作为专用邮件IP。注意阿里云默认对25端口有封锁或配额限制,需在控制台提交工单申请开通或增加配额。准备域名、控制台能修改DNS记录的权限和一个管理邮箱。
2.
安全组与端口配置
在ECS安全组中开放端口:25(SMTP)、587(SMTP submission)、465(SMTPS,可选)、143/993(IMAP)、110/995(POP3,可选)、80/443(用于Let’s Encrypt)。若阿里云限制25端口,提交工单并说明用途与IP。
3.
主机名与反向解析(PTR/rDNS)
在系统里把主机名设置为 mail.example.com(/etc/hostname 和 /etc/hosts);到阿里云控制台为该EIP设置反向DNS(rDNS/PTR),如果控制台不支持,通过工单请求将PTR指向 mail.example.com。PTR必须与SMTP HELO/hostname一致,能显著提升送达率。
4.
安装邮件服务软件(以Postfix+Dovecot为例)
安装命令(Ubuntu)示例:apt update && apt install postfix dovecot-imapd dovecot-pop3d opendkim opendkim-tools certbot -y。Postfix主要负责SMTP投递,Dovecot负责收取/认证,OpenDKIM负责DKIM签名。配置文件调整 main.cf:myhostname = mail.example.com;myorigin = /etc/mailname;mynetworks、smtpd_banner、smtpd_tls_cert_file、smtpd_tls_key_file、smtpd_sasl_auth_enable = yes、smtpd_recipient_restrictions 等。
5.
TLS证书与SMTP安全
用Let's Encrypt获取证书:certbot certonly --standalone -d mail.example.com,然后在Postfix和Dovecot中引用证书文件(/etc/letsencrypt/live/mail.example.com/fullchain.pem 和 privkey.pem)。设置 smtpd_tls_security_level = may 或 encrypt,启用SMTP认证(SASL)并强制587使用TLS以提升投递信用。
6.
SPF、DKIM、DMARC 三件套配置
SPF:在DNS添加 TXT 记录 "v=spf1 ip4:你的EIP -all"。DKIM:用 opendkim-genkey -t -s selector -d example.com 生成私钥/公钥,私钥放服务器,公钥写入 selector._domainkey.example.com 的TXT记录;在Postfix加入 milter 配置以调用OpenDKIM。DMARC:添加 _dmarc.example.com TXT "v=DMARC1; p=quarantine; rua=mailto:postmaster@example.com; ruf=mailto:postmaster@example.com; pct=100; adkim=s; aspf=s"。完成后通过 dig 和在线工具验证记录生效。
7.
邮件格式与头部优化
在应用层发送邮件时加入List-Unsubscribe头、Message-ID、Date、From格式规范(Friendly Name
),避免过度HTML和附件,控制单封大小,保持文本/HTML比例。保证HELO/EHLO字样与PTR一致,避免被识别为可疑来源。
8.
IP暖机(Warm-up)与发送策略
新IP严禁立即大批量投递。制定逐日上升策略:Day1 20-50封、Day2 2-3倍增长,1-2周内稳定到目标量。优先发送给活跃用户、极低退订率与低投诉列表。实现退回处理(bounce handling)并自动移除硬退回地址,设置退订链路并尊重退订。
9.
监控、声誉与反馈回路
注册Google Postmaster Tools、Microsoft SNDS,配置反馈回路(ARF)向主流提供商请求FBL(若可)。使用mxtoolbox、mail-tester等检测SPF/DKIM/黑名单。持续监控投递成功率、退信原因、投诉率,及时处理被列入黑名单的情况。
10.
常见问题与优化建议(Q&A)
问:阿里云EIP无法在控制台设置PTR怎么办?答:通过阿里云工单提交反向解析申请,提供EIP、期望PTR记录和实例ID,说明用途与合规信息;支持通常会在1-3个工作日内处理。
11.
问:如果25端口被封了,如何发送邮件?
答:先提交阿里云工单申请开放端口25;临时方案可以使用587或465通过第三方SMTP中继(如SendGrid、Amazon SES)投递,但长期建议争取开放25并使用自有IP以建立声誉。
12.
问:如何判断送达率不足的原因并修复?
答:检查退信日志(Postfix邮件队列与log),查看退信代码(5xx/4xx)、检查SPF/DKIM/DMARC是否通过、PTR是否正确、是否被黑名单列入、邮件内容是否触发过滤。按问题逐项修复并慢速暖机,提高列表质量,保持低投诉与低退订。
来源:如何在阿里云新加坡服务器 邮件IP上搭建高送达率的企业邮件系统