diff --git a/docs/清库部署测试记录.md b/docs/清库部署测试记录.md index 3a77d36..1be01c0 100644 --- a/docs/清库部署测试记录.md +++ b/docs/清库部署测试记录.md @@ -85,3 +85,34 @@ - [!] 本轮临时账号、分组和其他验收数据保留用于后续测试,发布前仍需按确认范围完成清理。 以上不构成全项目验收通过或上线签收。 + +### 13:46 至 14:00:公网收件边界修复与外域投递诊断 + +本段继续同一轮验收,不重新清库。业务操作及公网检测均经浏览器键鼠完成;交互式 SSH 用于只读日志检查及 Smail 二进制更新,文件传输使用密码认证并严格校验已知主机密钥。未调用 Smail 业务接口、未执行辅助测试脚本、未恢复历史密钥、未改动同机其他项目。 + +#### 公网收件边界 + +- [✓] 修复前公网检测连接到本机 25 端口,收到 `220 cdis.cn ESMTP Service Ready`,但未认证的外域收件人得到 `250` 接受响应,检测报告提示可能开放中继。 +- [x] 源码追踪发现匿名邮件进入本地收信流程;本段没有证明匿名邮件能实际转发到外域,不能将上述响应直接表述为已成功利用开放中继。 +- [✓] 在收件人阶段增加地址格式检查、受管域名匹配和匿名外域拒绝;已认证连接仍先检查凭据是否被撤销,不改变通知发信地址及收件人数限制。 +- [✓] 新版云端复测明确返回 `550 5.7.1 Relay access denied`,公网检测结果为非开放中继;检测目标为 `smtp.cdis.cn`,连接地址仍为本机。 +- [✓] 普通用户通过网页发送站内自收邮件,收件箱出现新邮件,打开邮件编号 11 可读完整正文;服务更新后原会话及已有邮件仍可访问。 +- [x] 已补充受管域名、别名、大小写、外域、伪装后缀、非受管子域名及无效地址的 Go 回归用例。本段遵守浏览器业务验收约束,没有执行 Go 单元测试,不能将新增用例记为已通过。 + +#### 外域投递与 DNS + +- [!] 普通用户此前通过页面发送的 mail-tester 邮件仍未收到,检测页面明确显示暂未收到邮件。本段不是外域收发验收通过。 +- [✓] 增加按 MX 主机及端口记录失败类别的诊断,不改变原有端口尝试顺序、安全停止条件和重试策略,不记录邮件正文、凭据或远端 SMTP 响应原文。 +- [x] 新版持久队列继续尝试原邮件,13:54:47 至 13:54:49 的运行日志明确显示:到检测收件主机的 25 端口连接超时、465 端口连接超时、587 端口返回无路由。旧日志只有最后一次错误,不能反推此前 25 端口的具体错误。 +- [!] 上述为一个外部目的地的失败证据,尚未证实云厂商限制或所有外域均不可达;主机防火墙允许出站也不能替代云网络验证。 +- [✓] 公网 DNS 页面查询到邮件主域名的 MX 指向 `smtp.cdis.cn`,地址为本机,DMARC 记录存在且启用隔离或拒绝策略。此结果不能替代真实邮件的 SPF、DKIM、DMARC 校验。 +- [!] 公网检测未查到本机 IP 的 PTR 记录,仍需核实并完成反向解析配置;本段没有修改 DNS。 + +#### 构建与部署证据 + +- 修改前检查点 `7612e10`、修复提交 `9e78499` 均已推送到 `smail` 远程。 +- 从当前源码编译 Linux amd64 内置插件版本成功;本段未修改前端及插件源码,使用现有内嵌资源,未声称重新构建前端。 +- 本地及云端二进制 SHA-256 均为 `379af177b0f999ddf48ed735bf081f6afe1b7b5e7df110211de646ab2bb01634`。 +- 校验传输文件后仅更新 `/opt/smail/smail`;Smail 于 13:54:29 启动,更新后 Smail、Nginx 均为运行状态。未清库、未修改证书、未保留旧二进制备份、未重启其他项目。 + +本段关闭了公网匿名外域收件响应问题,但外域双向投递、真实客户端协议、通知凭据协议隔离及证书续期等未完成项仍然有效,整体验收继续进行。