From fb97b6c4eaaafea9ae2a0712c64249f6e09c1a6e Mon Sep 17 00:00:00 2001 From: xuans Date: Fri, 2 Oct 2026 06:45:55 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=B0=E5=BD=95=E5=BD=93=E5=89=8D=E6=97=A5?= =?UTF-8?q?=E6=9C=9F=E5=80=99=E9=80=89=E5=8C=85=E7=94=9F=E4=BA=A7=E5=A4=8D?= =?UTF-8?q?=E6=A0=B8=E7=BB=93=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补充当前日期候选包的构建摘要、双机部署、安全边界、重启恢复窗口和未闭环阻塞项;明确 SSH 仅允许密码认证,不代表生产整体验收通过。 --- doc/Linux生产流程测试记录.md | 25 +++++++++++++++++++++++++ doc/Scert整改任务执行清单.md | 10 ++++++++++ doc/Scert整改合并优化清单.md | 11 +++++++++++ 3 files changed, 46 insertions(+) diff --git a/doc/Linux生产流程测试记录.md b/doc/Linux生产流程测试记录.md index a1f8fad..76931dd 100644 --- a/doc/Linux生产流程测试记录.md +++ b/doc/Linux生产流程测试记录.md @@ -1720,3 +1720,28 @@ SQLite 新测试程序 SHA-256:4c81656fae63a2eebad999d58e6a79e63e6f441810e02ce ### 结论 本轮通过了双机候选包安装、密码唯一 SSH、Scert 回环监听、数据库回环绑定和 Nginx 入口边界复核;没有通过生产整体验收。清库后的三数据库 Web 首次初始化、Smail 系统账户真实发信、密码重置完整闭环、P0-10 负向矩阵、历史恢复证据核查以及重启瞬间短暂 502 观察项仍需继续处理。当前总体状态保持 **P0-03:完成,等待复审**。 + +## 2026-10-01 当前日期候选包部署和安全边界复核 + +### 构建与部署 + +- 候选包:`Scert-20261001-V0.1.0-linux-amd64.tar.gz`。 +- SHA-256:`56426C1BBCECA68B32D122E813A950D2EE345349F89C3178080BD313F6F77E8E`。 +- 来源提交:`79bae3bf2b52720591279f78f5cbc340f82c4f36`,`source_dirty=false`。 +- 双机均通过远端归档校验、包内 `SHA256SUMS` 和官方安装器升级;未使用 SSH 私钥、公钥、`authorized_keys` 或辅助验收脚本。 +- 双机运行中的 `/scert/scert` 摘要均为 `3422abf0a5fb2c0254fb382118424733534fd00548eba4930a0e90857cd874b8`;`/scert/scert-admin` 摘要均为 `ee52d429a88b3942147e1acf67da3653f61e076c11d67bf3dd20b254b4321722`。 + +### 安全回归 + +- [x] `TestSSHKeyAPIIsUnavailable` 通过,`GET /api/v1/ssh-keys` 返回 404。 +- [x] 前端 241 项测试全部通过;测试确认服务器认证提示仅显示密码配置状态,SSH 私钥入口未挂载。 +- [x] 两台 SSH 服务端均为 `pubkeyauthentication no`、`passwordauthentication yes`、`authenticationmethods password`。 +- [x] 两台 Scert 仅监听 `127.0.0.1:8443`,数据库仅监听回环地址,Nginx 仅承担公网 `80/443` 入口。 + +### 当前候选包重启复核 + +在第二台对当前日期候选包执行 `systemctl restart Scert`,第 0、1 秒通过 Nginx 访问 `https://odacm.cn/readyz` 返回 502,第 2 秒恢复 200;随后服务保持 active,Scert 仍为回环监听,严格 TLS 校验没有关闭。该短暂恢复窗口继续作为生产门禁阻塞项记录。 + +### 结论 + +当前日期候选包部署和安全边界复核完成,但生产整体验收仍未通过。历史 `recovery_required` 事务、清库后的三数据库 Web 流程、Smail 系统账户真实发信、密码重置闭环和 P0-10 负向矩阵仍需继续处理。总体状态保持 **P0-03:完成,等待复审**。 diff --git a/doc/Scert整改任务执行清单.md b/doc/Scert整改任务执行清单.md index 46632c8..4f6036e 100644 --- a/doc/Scert整改任务执行清单.md +++ b/doc/Scert整改任务执行清单.md @@ -1860,3 +1860,13 @@ P0-05 从 `[!]` 调整为 `[~]`,并未标记完成;P0-04 剩余门禁和全 - [!] 暂缓或存在阻塞:第一台既有 `php-fpm-82.service` failed 与 Scert 无关,不能作为 Scert 通过依据,也不能在未授权范围内清理。 当前任务状态:T3 双机密码认证部署复核完成,等待复审;T5、T6 继续进行;T7 未开始。总体状态仍为 **P0-03:完成,等待复审**。 + +## 2026-10-01 当前日期候选包复核 + +- [x] 已完成,等待复审:重新生成当前日期候选包 `Scert-20261001-V0.1.0-linux-amd64.tar.gz`,SHA-256 为 `56426C1BBCECA68B32D122E813A950D2EE345349F89C3178080BD313F6F77E8E`,来源提交 `79bae3b` 且构建树干净。 +- [x] 已完成,等待复审:双机重新部署后运行二进制摘要与本地构建产物一致,服务、存储 socket、Nginx 和回环监听边界正常。 +- [x] 已完成,等待复审:后端 SSH 私钥 API 定向测试通过,返回 404;前端 241 项测试通过,其中包含服务器认证提示和 SSH 私钥入口不可达回归。 +- [x] 已完成,等待复审:第二台当前候选包重启恢复测试记录第 0、1 秒为 502,第 2 秒恢复 200,未通过开放 8443 或关闭 TLS 校验规避。 +- [!] 暂缓或存在阻塞:短暂 502、两条历史恢复事务、清库后的三数据库流程、Smail 系统账户发信、密码重置闭环和 P0-10 负向矩阵仍未完成。 + +当前任务状态:T3 当前日期候选包复核完成,等待复审;T5、T6 继续进行;T7 未开始。总体状态仍为 **P0-03:完成,等待复审**。 diff --git a/doc/Scert整改合并优化清单.md b/doc/Scert整改合并优化清单.md index d85a3fa..2873eba 100644 --- a/doc/Scert整改合并优化清单.md +++ b/doc/Scert整改合并优化清单.md @@ -2498,3 +2498,14 @@ P0-11 生产验收门禁 - [!] 第一台存在与 Scert 无关的既有 `php-fpm-82.service` failed 状态,不能混入 Scert 验收结论,需单独处理或明确排除。 本轮完成的是候选包部署和入口安全边界复核,不代表生产整体验收通过。清库后的三数据库 Web 首次初始化、Smail 系统账户真实发信、密码重置完整闭环、P0-10 负向矩阵、历史恢复证据核查及重启瞬间短暂 502 观察项仍未闭环。总体状态保持:**P0-03:完成,等待复审**。 + +## 2026-10-01 当前日期候选包复核补充 + +- [x] 已按当前日期重新生成 `Scert-20261001-V0.1.0-linux-amd64.tar.gz`,避免使用未来日期命名的候选包;SHA-256 为 `56426C1BBCECA68B32D122E813A950D2EE345349F89C3178080BD313F6F77E8E`。 +- [x] 当前候选包来源提交为 `79bae3bf2b52720591279f78f5cbc340f82c4f36`,`source_dirty=false`,Linux amd64、trimpath 和发布路径检查通过。 +- [x] 双机已重新部署当前日期候选包;两台 `/scert/scert` SHA-256 均为 `3422abf0a5fb2c0254fb382118424733534fd00548eba4930a0e90857cd874b8`,`scert-admin` SHA-256 均为 `ee52d429a88b3942147e1acf67da3653f61e076c11d67bf3dd20b254b4321722`。 +- [x] 当前生产路径验证仍只允许密码 SSH;SSH 私钥 API 测试返回 404,前端生产测试确认不挂载 SSH 私钥入口。历史 `sshkey` 目录、迁移字段和未挂载样式未删除,不代表能力重新启用。 +- [x] 当前候选包第二台 Scert 重启后第 0、1 秒 Nginx 返回 502,第 2 秒恢复 200;服务、端口边界和 TLS 校验策略均未被放宽。 +- [!] 短暂 502 仍是生产门禁阻塞项;历史 `recovery_required` 事务和清库后的完整业务验收也未闭环。 + +总体状态继续保持:**P0-03:完成,等待复审**,不得标记为生产整体验收通过。