You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7.x服务器多域名入站邮件持续退信问题排查求助

CentOS 7.x服务器多域名入站邮件持续退信问题排查求助

Hey there, let's work through this step by step—your situation sounds frustrating, especially since you've already ruled out the mail washer and confirmed DNS looks good. Here are some targeted checks to narrow down the root cause:

1. 先深挖Exim日志(最关键!)

退信里的"域名找不到"提示太模糊,但Exim主日志会记录真实的错误细节。运行下面的命令实时监控日志:

tail -f /var/log/exim_mainlog

然后给example.com下的邮箱发一封测试邮件,盯着日志里的相关条目,你可能会发现:

  • Exim不识别example.com为本地域名的问题
  • 服务器自身DNS查询失败(哪怕外部dig工具显示正常)
  • 防火墙或ACL规则拦截了连接

2. 核实cPanel的本地域名配置

cPanel更新有时会重置邮件路由设置,你可以这样检查:

  • 在cPanel里找到example.com的邮件路由设置,确保它被设为本地邮件交换器(不是"远程"或"自动"模式)。
  • 或者直接查看本地域名文件:
    cat /etc/localdomains
    
    确认example.com在列表里,如果没有,手动添加后重启Exim:
    systemctl restart exim
    

3. 刷新服务器本地DNS缓存

哪怕外部dig查询显示MX记录正确,服务器本地的DNS缓存可能还存着旧数据。根据你用的服务执行对应操作:

  • 若用nscd:
    systemctl restart nscd
    
  • 若用dnsmasq(cPanel常用):
    systemctl restart dnsmasq
    

刷新后再发测试邮件看看问题是否解决。

4. 检查邮件清洗服务遗留的Exim ACL规则

如果你之前配置过Exim只接受邮件清洗服务IP的连接,移除MX记录后这些规则可能还在生效。可以查看:

  • cPanel里的Exim配置编辑器(高级板块)
  • 原始的/etc/exim.conf文件,找有没有限制入站连接到特定IP的ACL规则。如果找到,先临时注释掉再重启Exim测试。

5. 确认防火墙没拦截25端口

CentOS 7默认用firewalld,要确保25端口(SMTP)开放:

firewall-cmd --list-all

如果允许的服务里没有smtp,永久添加并重载规则:

firewall-cmd --add-service=smtp --permanent
firewall-cmd --reload

另外也要检查第三方防火墙(比如cPanel常用的CSF/LFD)是否拦截了入站SMTP流量。

6. 获取完整的退信邮件头

让发件人把包含所有头信息的完整退信邮件转发给你。邮件头会显示发件方邮件服务器解析你MX记录的全过程,可能会暴露比如:

  • 服务器IP的PTR(反向DNS)记录配置错误
  • 被掩盖成"域名找不到"的SPF/DKIM验证失败问题

备注:内容来源于stack exchange,提问作者BaliDave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 12:23:09