diff --git a/doc/Linux生产流程测试记录.md b/doc/Linux生产流程测试记录.md index 4980c2c..6f69bab 100644 --- a/doc/Linux生产流程测试记录.md +++ b/doc/Linux生产流程测试记录.md @@ -1,5 +1,33 @@ # Linux 生产流程测试记录 +## 2026年10月2日12:54 双机正式候选升级记录 + +本节属于升级与安全复核,不是清库首次生产验收。未开放额外端口,未修改 Nginx,未关闭 TLS 或 SSH 主机指纹校验,未创建辅助验收脚本。只使用正式安装器自带发布事务,没有额外远端备份。 + +### 正式候选及拒绝路径 + +- [x] 原生 Linux 构建实际退出零,源码提交 1150c3904eb82d9274fbedf7bfd3e6d402623216,source_dirty=false,local_path_check=passed;四个二进制内嵌同一提交、vcs.modified=false、trimpath=true。 +- [x] 专属 TMPDIR 消除了通用 /tmp/ 与安装器目录拒绝规则的误匹配;未修改路径检查代码,原有检查继续覆盖实际构建目录和临时目录。 +- [x] 正式归档 SHA256:cf0529095eefc39de44d55da95fbd196a7340773c8e9701b9bcdf15b308126c9。双机传输后归档和包内 SHA256SUMS 全部校验通过。 +- [x] 发行程序以非特权用户、独立且不存在的配置文件路径启动,0.0.0.0、::、192.0.2.1、localhost 均被明确拒绝,退出码为 1,未创建该配置文件。 + +### 第二台管理入口 + +- [x] 12:47:55 开始升级;12:47:56 主进程启动,12:48:01 收到就绪通知后进入 active。Type=notify、NotifyAccess=main,状态文字明确要求通过 readyz 检查业务就绪。 +- [x] 主程序仅监听 127.0.0.1:8443;严格普通域名 HTTPS readyz 返回 ready、HTTP 200,首页 200,HTTP 入口 301 跳转 HTTPS。12:51 后续连续 10 次 readyz 均 HTTP 200、TLS 校验零、curl 退出零。 +- [x] Nginx 配置摘要未变,Nginx 与 MySQL 主进程编号均未变。 +- [!] 第一台跨机连续 60 次采样包含 7 次 HTTP 502,发生在 12:47:56 至 12:48:00;12:48:01 恢复 200。另有 2 次一秒连接超时发生于升级窗口外,不能仅凭该采样归因于 Scert,也不将 HTTP 000 时的默认 TLS 数值解释为校验成功。其余 51 次为 HTTP 200。 +- [!] 启动通知已真实验证,但单实例停机窗口仍存在,不能声明零 502 或无中断升级。 + +### 第一台部署目标及边界 + +- [x] 12:51:39 开始升级,12:51:40 进入 active;同样收到真实就绪通知,仅监听 127.0.0.1:8443。未新增管理站点,未将其默认站点当作管理入口验收。 +- [x] 第一台 Nginx、MySQL、Xmail 主进程编号和运行态保持不变;未操作其他业务服务。 +- [x] 两台已安装的 scert、scert-admin、scert-storage 摘要对应一致。主程序 SHA256:91f32ea0e6971c7c66668d395ec91bcb6e78ebbd60bee1ddd82910d9f8f14a8e。 +- [x] 升级后双向 IPv4 探测对方的 8443、3306、33060 均未连接成功;仅作为这两个来源的 IPv4 路径证据,不扩大为所有来源或 IPv6 外部探测结论。 +- [x] 双机 systemd-analyze verify 均退出零;主机已有 snapd 警告、第一台已有 cloudmonitor 警告保留,未修改其他服务配置。 +- [!] 三数据库清库首次 Web 流程、系统通知实发与重置闭环、P0-10 负向恢复矩阵及最终统一验收仍未完成。 + ## 2026年10月2日12:42 Linux 回环监听回归 - [x] 第二台隔离源码目录以 nobody 用户、Go 1.26.6 执行 config、bootstrap、cli、app、serviceready、servicehost 六包完整回归,实际退出零;监听相关新用例重复 20 次通过,六包 go vet 退出零。 diff --git a/doc/Scert整改任务执行清单.md b/doc/Scert整改任务执行清单.md index 8055476..18d9525 100644 --- a/doc/Scert整改任务执行清单.md +++ b/doc/Scert整改任务执行清单.md @@ -1,5 +1,18 @@ # Scert 整改任务执行清单 +## 2026年10月2日12:54 双机安全升级当前入口 + +本节覆盖下方本轮执行态记录;历史失败和未通过门禁继续保留。 + +- [x] Linux 非回环监听防护、六包原生回归、监听用例重复 20 次和 go vet 已完成;源码提交 1150c39 已推送。 +- [x] 正式构建使用专属 TMPDIR 后通过原有路径扫描;未更改扫描器或跳过检查。发布清单 source_dirty=false,四个二进制均为同一提交并带 trimpath。 +- [x] 正式发行程序实测拒绝 0.0.0.0、::、非回环 IP 及 localhost,退出码均为 1,没有创建初始化配置文件。 +- [x] 第二台 12:48、第一台 12:51 均通过正式安装器完成配套升级;Type=notify 和状态通知生效,Scert 均仅监听 127.0.0.1:8443。 +- [x] 双机主程序摘要一致,包内校验全部通过;双向 IPv4 探测对方 8443、3306、33060 均未连接成功。不扩大为所有来源或 IPv6 外部探测结论。 +- [x] 第二台严格域名 HTTPS 首页及 readyz 返回 200,HTTP 返回 301 跳转 HTTPS,后续连续 10 次 readyz 成功;Nginx 配置摘要及主进程未变。第一台未新增管理站点,其 Nginx、MySQL、Xmail 主进程未变。 +- [!] 单实例停机升级窗口仍有 502:跨机 60 次采样出现 7 次 502、2 次连接超时。启动通知已验证,但不能当作零中断整改完成。 +- [!] 本轮未清库、未执行首次 Web 全流程。P0-10、系统通知实发、三数据库首次流程及最终生产验收保持未通过。 + ## 2026年10月2日12:42 当前安全整改入口 - [x] Linux 默认及空值回退使用回环地址;CLI、初始化及正式应用入口拒绝实际非回环监听,保留旧配置经安全环境覆盖启动的兼容性。 diff --git a/doc/Scert整改合并优化清单.md b/doc/Scert整改合并优化清单.md index 378ea91..a0cebba 100644 --- a/doc/Scert整改合并优化清单.md +++ b/doc/Scert整改合并优化清单.md @@ -1,5 +1,13 @@ # Scert 整改、合并与优化清单 +## 2026年10月2日12:54 最新进度入口 + +- [x] Linux 非回环监听风险已完成代码收口、六包原生回归、负向发行程序验证和双机配套部署;两台当前均仅监听 127.0.0.1:8443。 +- [x] 正式候选源码提交 1150c39,发行路径检查、归档及包内校验通过;启动通知真实生效,第二台严格 HTTPS 首页及 readyz 正常。 +- [x] 双向跨机 IPv4 端口探测没有连接到对方的 8443、3306、33060;未新增公网端口、未改 Nginx、未影响第一台邮件服务主进程。 +- [!] 停机升级窗口仍观察到 7 次 502,不能将 Type=notify 等同于无中断升级;T4 不标整体验收通过。 +- [!] 总体生产验收仍未通过;P0-10、系统通知实发、三数据库清库首次 Web 流程及统一复审继续待办。详细证据见同日 Linux 测试记录。 + ## 2026年10月2日12:42 最新进度入口 - [x] 已补齐 Linux 独立启动时的回环监听限制;实际非回环 IP、通配地址及域名均被启动入口拒绝。