diff --git a/doc/Scert开发任务清单.md b/doc/Scert开发任务清单.md index 235a48f..bd0034a 100644 --- a/doc/Scert开发任务清单.md +++ b/doc/Scert开发任务清单.md @@ -8,7 +8,7 @@ - [x] 一个域名多服务器:`scert-20260930.apmmk.cn` 两台推送成功。 - [x] 一个服务器多域名:`scert-20260930.apmmk.cn` 与 `scert-multi-20260930.apmmk.cn` 连续推送成功。 - [x] 失败部署自动回滚、配置校验和 reload 恢复已实机观察。 -- [!] `odacm.cn` 第二台属于 Scert 管理入口,使用 `scert-nginx` 激活目录,不能与普通业务证书路径混用;需要完成管理域名边界保护。 +- [x] 管理域名保护代码、Nginx 配置兜底识别和专项测试已完成;[~] 两台服务器普通部署负向复测待完成。 - [~] 正在继续首次 Web、三数据库、DNS/ACME、Smail 发信、密码重置、历史恢复和升级回滚验收。 - [ ] 最终上线报告、证据汇总和全部门禁复审。 diff --git a/doc/Scert整改任务执行清单.md b/doc/Scert整改任务执行清单.md index f6a4ab2..95f5560 100644 --- a/doc/Scert整改任务执行清单.md +++ b/doc/Scert整改任务执行清单.md @@ -7,7 +7,7 @@ - [x] 仅处理 Linux,保留密码 SSH、Nginx 反向代理 `80/443` 和严格 TLS 校验边界。 - [x] 验证一个域名部署到多个服务器,以及一个服务器承载多个域名。 - [x] 验证证书推送、远端 Nginx 配置校验、reload、部署后 HTTPS 校验和失败回滚。 -- [!] 处理 `odacm.cn` 管理域名与第二台 `scert-nginx` 受限激活目录的路径冲突。 +- [~] 管理域名保护代码和 Nginx 配置兜底已完成,待两台服务器执行 `odacm.cn` 普通部署负向复测。 - [ ] 清缓存重新执行首次初始化及登录流程。 - [ ] 完成 SQLite、MySQL、PostgreSQL 首次初始化矩阵。 - [ ] 完成 Smail 系统账户真实发信、验证码和超级管理员重置密码闭环。 diff --git a/doc/Scert整改合并优化清单.md b/doc/Scert整改合并优化清单.md index 24bf48f..aded6cd 100644 --- a/doc/Scert整改合并优化清单.md +++ b/doc/Scert整改合并优化清单.md @@ -1,17 +1,28 @@ # Scert 整改、合并与优化清单 -## 2026年10月3日 当前执行入口:双服务器多域名推送通过,管理域名隔离待完成 +## 2026年10月3日 Linux上线冲刺任务清单(当前执行入口) -本轮继续只处理 Linux,不处理 Windows;上线门禁按真实服务器、真实 HTTPS、真实 Nginx 和浏览器结果判断,不以单元测试或构建结果替代生产验收。 +本轮只处理 Linux,不处理 Windows;目标是完成明日上线前的可验收闭环。生产结论必须来自两台真实服务器、真实 HTTPS、浏览器、数据库、邮件和回滚证据,不能用构建或单元测试替代。 -- [x] 已核对整改范围并建立当前任务清单:双服务器部署、一个域名多服务器、一个服务器多域名、证书回滚、首次初始化、DNS/ACME、系统发信、密码闭环和最终验收。 -- [x] `scert-20260930.apmmk.cn` 在两台服务器完成证书推送、Nginx 配置校验、reload 及站点 HTTPS 严格校验;任务 `38689124-e4bb-432c-8f9c-b6f75546107c` 返回 2 台成功。 -- [x] `scert-multi-20260930.apmmk.cn` 在两台服务器完成证书推送、Nginx 配置校验、reload 及站点 HTTPS 严格校验;任务 `68478d62-2b22-4320-a3e9-00018cb1bde0` 返回 2 台成功。 -- [x] 已确认多对多部署实机路径可用:同一域名可推送两台服务器,同一服务器可承载多个域名;两个独立域名连续推送未互相覆盖。 -- [!] `odacm.cn` 不能按普通业务域名直接推送到第二台:该主机的管理入口使用 `/var/lib/scert-nginx/active.conf` 受限激活机制,而普通业务推送写入 `/ssl/odacm.cn/single/`,部署后证书指纹不一致,系统已自动回滚并通过恢复校验。不得关闭 TLS 校验或手工伪造成功。 -- [~] 处理管理域名与业务域名的边界:保留第二台管理证书受限激活流程,明确禁止普通业务部署覆盖管理激活路径;完成提示、配置核对及实机复测后再关闭该门禁。 -- [~] 继续清缓存首次 Web 流程、三数据库初始化、Smail 系统账户发信、验证码/超级管理员重置密码、DNS/ACME 正负向、历史恢复和最终升级回滚。 -- [!] 当前整体仍未达到生产验收通过;已通过的两个独立域名双机推送只能证明多服务器部署主链路,不能替代管理域名隔离和其余生产门禁。 +### 当前任务状态 + +- [x] 已读取整改清单、任务执行清单和开发任务清单,并核对当前分支、工作区和最近提交。 +- [x] 最新 Linux 候选包已部署到 `8.137.23.95` 与 `45.136.13.241`;Scert、存储 socket、Nginx 均为 active。 +- [x] 两台服务器保持公网仅 Nginx `80/443`,Scert 仅监听 `127.0.0.1:8443`,未开放内部端口,严格 TLS 校验保持开启。 +- [x] 管理域名保护代码、Nginx 配置兜底识别和回归测试已完成,并已部署最新候选包。 +- [x] 第二台服务器已清理明确属于历史 Scert 测试的临时构建和测试文件;未清理 `/scert`、数据库、证书或 Nginx 配置。 +- [~] 在两台服务器执行 `odacm.cn` 管理域名普通证书部署负向验证,确认拒绝、回滚和现场不变。 +- [ ] 使用独立普通业务域名执行双机正向部署,确认管理域名保护不影响正常证书部署。 +- [!] 第一台当前管理证书的公共 SAN 与 `odacm.cn` 不匹配;在不更换现有业务证书的前提下,需补齐可验证的正式域名入口证据。 +- [!] 两台现场仍有历史 `recovery_required` 事务缺少可信恢复证据;必须通过产品恢复流程核查,禁止手工删锁或伪造证据。 +- [ ] 清理浏览器缓存后,分别完成 SQLite、MySQL、PostgreSQL 首次 Web 初始化及重新登录持久化验证。 +- [ ] 使用 Smail 系统账户完成真实发信、验证码和超级管理员密码重置闭环;失败时继续按 Smail 项目实现排查。 +- [ ] 完成 DNS/ACME 正向和负向矩阵、证书历史恢复、失败回滚、重试幂等及重启恢复验证。 +- [ ] 汇总双机、HTTPS、浏览器、数据库、邮件、DNS、回滚证据,满足所有门禁后再标记最终生产验收。 + +### 本轮结论 + +当前仍为 **P0-03:完成,等待复审**,整体生产验收未通过。已完成的是候选包双机运行和基础安全边界,不代表全部上线门禁已关闭。 ## 2026年10月2日 当前执行入口:自动回归完成,转入双机生产复审