1、云服务商限制: 绝大多数主流云服务器提供商(如阿里云、腾讯云、AWS、Google Cloud等)默认禁止了出站和入站的25端口通信,这是为了防止垃圾邮件发送者滥用其网络,通常你需要提交工单,提供合理的业务理由(如自建邮件服务器用于事务性邮件)并承诺遵守反垃圾邮件政策,才能申请解封。
2、本地机房: 如果你管理的是本地物理服务器,则完全自主控制,但同样需要确保遵守网络规范,避免IP被列入黑名单。
3、安全风险: 开放25端口并搭建邮件服务器后,如果配置不当,你的服务器很可能成为垃圾邮件中转站,导致你的服务器IP被全球各大邮件服务商(如Gmail, Outlook等)拉黑,届时所有发自你IP的邮件都会被拒收。
整个过程分为两大步:① 配置服务器防火墙 和② 配置系统防火墙,请先完成第一步,否则第二步是无效的。
这是最关键的一步,因为它是流量进入服务器的第一道关卡。
以腾讯云/CVM为例(其他云服务商操作类似):
1、 登录云服务器控制台。
2、 找到你的实例,点击其所属的安全组。
3、 进入安全组管理页面,点击“编辑规则”。
4、 选择入站规则,点击“添加规则”。
5、 按照如下配置:
类型 选择自定义
或TCP:25
来源 根据需求选择。
0.0.0.0/0
表示允许所有IP访问(通常用于公共邮件服务,但风险高)。
your-office-ip/32
表示只允许你办公室的IP访问(更安全)。
策略 选择“允许”。
6、 同样地,如果需要服务器能通过25端口向外发送邮件(出站),你还需要配置出站规则,添加一条类似的规则,目标设置为0.0.0.0/0
。
7、 保存规则,等待1-2分钟生效。
注意: 如果这里没有25端口的选项或添加后依然不通,说明云厂商在更高层面封禁了25端口,你必须联系他们的客服申请解封。
第二步:配置操作系统防火墙(以Linux为例)
如果服务器本身开启了防火墙(如firewalld
或iptables
),你需要在系统内部放行25端口。
方法A:使用firewalld
(CentOS 7/8, Rocky Linux, Fedora等)
1、检查防火墙状态:
systemctl status firewalld
如果显示active (running)
,则需要配置。
2、添加25端口规则并重载:
# 将端口25添加到public区域的永久规则中,并重新加载防火墙 firewall-cmd --permanent --add-port=25/tcp firewall-cmd --reload
3、验证规则是否生效:
firewall-cmd --list-ports
查看输出中是否包含25/tcp
。
方法B:使用iptables
(较老的系统或自定义环境)
1、 添加一条INPUT链规则允许25端口:
iptables -I INPUT -p tcp --dport 25 -j ACCEPT
2、保存iptables规则(非常重要,否则重启后失效):
* CentOS 6:
service iptables save
Ubuntu/Debian: 需要安装iptables-persistent
apt-get install iptables-persistent netfilter-persistent save
* 其他系统可能需要将规则写入/etc/sysconfig/iptables
文件。
配置完成后,务必进行测试。
1、从外部网络测试:
* 找一台不在你服务器局域网内的电脑。
使用telnet
命令(Windows和Linux通常都自带)
telnet 你的服务器公网IP 25
* 如果连接成功,屏幕会变黑或者显示邮件服务(如Postfix, Exim)的欢迎标语,这说明端口已开放。
* 如果连接失败(超时或拒绝连接),说明配置未生效,需要检查第一步和第二步。
2、在服务器本地测试:
* 确保服务器上已经运行了SMTP服务(如Postfix)。
本地使用telnet
测试
telnet localhost 25
* 如果能连通,说明软件服务本身工作正常,问题出在网络或防火墙配置上。
不要直接使用25端口发送邮件 现代邮件发送最佳实践是:
1. 使用端口587(Submission) 作为邮件提交端口,它强制要求身份验证和加密。
2. 配合SSL/TLS加密(使用STARTTLS命令)。
使用第三方邮件中继服务 自己维护一个发信IP的声誉非常困难,对于发送事务性邮件(注册确认、密码重置等)或 newsletters,强烈建议使用Amazon SES, SendGrid, MailChimp, 阿里云邮件推送 等服务,它们提供免费的额度,拥有良好的发信IP池,能极大提高邮件送达率,你只需要通过它们的SMTP接口发信即可,完全无需自己开放25端口。
反向DNS记录(PTR) 如果你坚持要自建邮件服务器,必须为你的服务器公网IP设置正确的反向DNS解析记录(PTR record),这通常也需要联系你的云服务商或ISP来设置,没有正确的rDNS,你的邮件很大概率会被直接归为垃圾邮件。
流程是云安全组/防火墙 -> 系统防火墙 -> 测试
,但最重要的是先确认你的云服务商是否允许你使用25端口,并考虑是否有必要冒风险自建邮件服务器。
文章摘自:https://idc.huochengrm.cn/fwq/14802.html
评论