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

Sendmail无法通过Postfix中继服务器发送邮件问题求助

Sendmail 转 Postfix 中继被拒问题排查

一、核对 Postfix 中继服务器核心配置(main.cf)

重点检查以下参数,确认中继规则是否放行Sendmail服务器:

  • relay_domains:需包含Sendmail服务器所属的域名/IP,或设置为允许中继的范围
  • smtpd_relay_restrictions:优先级最高的中继控制规则,需包含允许Sendmail服务器IP的条目(如permit_mynetworks)
  • mynetworks:若使用permit_mynetworks,必须将Sendmail服务器的内网/公网IP加入此列表
  • smtpd_recipient_restrictions:确认无规则拦截Sendmail的中继请求

用户提供的main.cf配置:

# 粘贴用户提供的main.cf内容

二、分析 Postfix 拒绝日志

从Postfix日志(通常为/var/log/mail.log)中定位拒绝记录,重点提取:

  • 拒绝错误码(如554 5.7.1对应中继权限不足)
  • 客户端IP(确认是Sendmail服务器的IP)
  • 拒绝原因描述(如Relay access denied)

用户提供的Postfix日志:

粘贴用户提供的Postfix日志内容

三、检查 Sendmail 中继配置(sendmail.mc)

确认Sendmail已正确指向Postfix中继:

  • DS参数:需设置为Postfix中继服务器的域名或IP,例:DSpostfix-relay.example.com或DS192.168.1.100
  • MASQUERADE_AS:若发件人域名不在Postfix允许中继的范围内,需调整此参数统一发件人域名
  • 编译生效:修改sendmail.mc后需执行m4 sendmail.mc > sendmail.cf并重启Sendmail服务

用户提供的sendmail.mc配置:

# 粘贴用户提供的sendmail.mc内容

四、分析 Sendmail 发送日志

从Sendmail日志(如/var/log/sendmail.log或系统邮件日志)中提取失败记录,重点确认:

  • 与Postfix服务器的TCP连接是否成功建立
  • 收到的具体错误响应(需与Postfix日志的拒绝原因对应)

用户提供的Sendmail日志:

粘贴用户提供的Sendmail日志内容

五、额外排查项

  • 网络连通性:在Sendmail服务器执行telnet [postfix-ip] 25或nc -zv [postfix-ip] 25,测试25端口是否可达
  • DNS解析:确认Sendmail服务器能正确解析Postfix中继的域名
  • Postfix客户端限制:检查smtpd_client_restrictions是否存在黑名单规则拦截Sendmail的IP
  • 邮件验证规则:若Postfix启用SPF/DKIM,确认Sendmail服务器IP在发件人域名的SPF记录中

内容的提问来源于stack exchange,提问作者Richard D

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 20:43:32