MailPlus 安全日志总对照:三十条代码分三区,丢邮件先在这里找路

痛点场景

业务同事来报:客户发来的合同邮件没收到,对方邮件服务器显示投递成功。你打开 MailPlus Server > 审核 > 日志,翻到一条带代码的记录,比如 550 5.7.1,后面跟着一句英文——这一串代码到底在说什么,是该改自己服务器的设置,还是该让发件方去修配置?

官方知识库专门维护了一篇《MailPlus 安全日志索引》,把审核日志中可能出现的常见安全日志整理成一张总表,开篇就点明定位:邮件服务器经常通过网络进行通信,因此经常成为恶意攻击的目标,MailPlus Server 维护各种安全日志来进行保护属于正常运作;如果您丢失了重要电子邮件,请先检查日志以了解原因和解决方案。本文把这张官方对照表做成选路地图,并标注每条日志此前是否已有专文详解。

先记住分区规则:4 是缓期、5 是终拒、无码是策略命中

拿到一条日志,看代码第一位就能分诊:

  • 4 开头:临时性失败。对方服务器稍后会自动重试,处置窗口比较从容,多数情况是请发件方补 DNS 记录即可化解;
  • 5 开头:最终拒绝。邮件已经被退回,重试也进不来,要么是发件方确实有问题,要么是你这边某项安全检查拦得比预期严;
  • 无代码日志:不对应 SMTP 状态码,是安全策略直接命中的记录,重点看触发的策略名。

下面按这三区逐条过一遍。标注「已发专文」的条目,站内有单独一篇详解处置步骤,按标题检索即可。

第一区:以 4 开头的临时拒绝(7 条)

代码 日志消息 一句话定性
450 4.7.1 Helo command rejected: Host not found 对方 HELO 自报的主机名解析不到,临时拒绝(已发专文)
450 4.7.1 Error: too much mail from user account 单帐户发信量超限被缓发
450 4.7.1 Error: mail flow exceeds from user account 单帐户邮件流量超限被缓发
450 4.1.8 Sender address rejected: Domain not found 发件域解析不到,临时拒绝(已发专文)
451 4.7.1 Service unavailable - try again later 服务暂不可用,请稍后重试
451 4.7.1 Greylisting in action, please come back later 灰名单生效,首投暂缓等复投(已发专文)
450 4.7.25 Client host rejected: cannot find your hostname 客户端主机找不到自己的主机名被拒

这一区里 450 4.7.1 的 Host not found 与 450 4.1.8 的 Domain not found 是近亲:前者卡在 HELO 主机名,后者卡在发件域,排查对象不同,别认错。两条 too much mail / mail flow exceeds 开头的日志指向单帐户的发信量或流量配额,多半出现在群发场景。

第二区:以 5 开头的最终拒绝(19 条)

代码 日志消息 一句话定性
503 5.5.0 Recipient address rejected: Improper use of SMTP command pipelining 对方违规使用管道传输(已发专文)
504 5.5.2 Helo command rejected: need fully-qualified hostname HELO 主机名不是完全限定域名(已发专文)
5.2.2 Recipient address rejected: Quota exceeded 收件人邮箱已满配额(已发专文)
550 5.5.1 Protocol error 协议错误(已发专文)
550 5.7.1 Error: [IP] exceeded unknown recipient count limit 对方 IP 试探过多不存在的收件人
550 5.7.1 Service unavailable; client [IP] blocked using xbl.spamhaus.org 对方 IP 在 Spamhaus 黑名单上
550 5.7.1 Recipient address rejected: Message rejected due to: SPF fail SPF 校验未过(已发专文)
550 5.1.1 Recipient address rejected: User unknown 收件人不存在(已发专文)
551 5.7.1 Go away 已被灰名单阻止的目标(已发专文)
552 5.3.4 Message size exceeds fixed limit 整封邮件超出大小上限(已发专文)
554 5.7.1 Client host rejected: Access denied 客户端主机被拒
554 5.7.1 Sender address rejected: Access denied 发件人地址被拒
554 5.7.1 Recipient address rejected: Access denied 收件人地址被拒
554 5.7.1 Sender address rejected: not owned by user admin 发件人不拥有该地址,验发件人身份
554 5.7.1 Relay access denied 中继投递被拒(已发专文)
5.7.1 Attachment type not allowed 附件类型在封锁名单(已发专文)
5.7.1 Attachment size overflow 附件大小超限(已发专文)
5.7.1 Rejected by SPF policy for domain with invalid ARC result SPF 政策拒绝且 ARC 结果无效(已发专文)
5.7.1 Rejected by DMARC policy for domain with invalid ARC result DMARC 政策拒绝且 ARC 结果无效

这一区信息量最大。几组容易混淆的:三条 Access denied 分别对应客户端、发件人、收件人三个被拒对象,处置入口不同;not owned by user admin 那条卡的是帐号与发件地址的归属关系,多帐户共用系统时常见;黑名单(Spamhaus)与未知收件人试探两条说明对面行为可疑,拒绝本身是保护在起作用。

第三区:无代码日志(4 条)

日志消息 一句话定性
Client host triggers DISCARD action 触发丢弃动作,邮件被直接丢弃
Bad DKIM signature data: spam DKIM 签名数据无效并标记为垃圾邮件(已发专文)
Detected and rejected fragmented message section 检测并拒绝分段的邮件区段(已发专文)
Detected and rejected external message body 检测并拒绝外部邮件正文(已发专文)

这四条没有 SMTP 状态码,直接对应安全策略的命中记录,排查时从消息里的策略关键词入手。

官方给的延伸阅读

索引页末尾官方给了两处:一是 Synology MailPlus 的常见问题汇总,二是 Google Workspace 管理员帮助里关于 SMTP 错误消息的说明——状态码体系是跨厂商通用的,Google 那份文档可当作代码语义的旁证。

运维建议

  • 把这张对照表放在手边,先对代码定性,再决定动谁:4 开头优先请发件方修配置,5 开头先核对自己的安全设置是否拦错了正规邮件;
  • 同一条日志反复出现时值得单独深挖,站内已有十余条专文覆盖高频日志的逐步处置;
  • 涉及 SPF、DKIM、DMARC 的几条,根源多在域名 DNS 记录,改设置前先把发件域的身份记录理一遍。

丢邮件的排查,对表定性永远排在动手改设置之前。诚鑫致达科技维护客户邮件系统时,把这张代码对照表钉在运维手册第一页,先对表、再出手,改配置的方向一次就能走对。