Files
server-ops/CHANGELOG.md

4.2 KiB
Raw Blame History

CHANGELOG - 服务器运维日志

v1.0.0 (2026-06-14)

Added

  • 初始化仓库README、CHANGELOG、DECISION_LOG
  • 每日运维总结机制确立
  • 首份总结2026-06-14 服务器功能变动总结

v1.1.0 (2026-06-15)

Added

  • — Cookie session auth proxy 完整源码和 systemd 服务文件
  • — Python HTTPServerbcrypt 密码验证HMAC-SHA256 token 签名
  • — systemd 服务port 9002开机自启

Changed

  • 安全认证升级Caddy basicauth → auth_proxy Cookie session
    • 所有保护服务gitea/dashboard/books/nav/brief/todo改为走 auth_proxy:9002
    • 新增 auth.xybkwd.top 子域作为登录入口
    • Session cookie: 7天过期HttpOnlySameSite=LaxDomain=.xybkwd.top
    • 密码验证不变bcrypttoken 签名防篡改HMAC-SHA256
  • — 去掉所有 basicauth改为 reverse_proxy localhost:9002
  • 服务清单更新books (Calibre-Web) 状态同步

Fixed

  • 移动端重复登录问题basicauth 每 ~1 小时要求重新输入密码
  • Cookie 跨子域失效:缺 Domain=.xybkwd.top 导致各子域不共享 cookie
  • Set-Cookie 值带多余引号:浏览器拒绝该 cookie

Security

  • 认证安全性不变bcrypt + HMAC-SHA256无明文密码传输
  • 公开服务blog/vaultwarden/memos不经过 auth_proxy不受影响

v1.1.0 (2026-06-15)

Added

  • — Cookie session auth proxy 完整源码和 systemd 服务文件
  • — Python HTTPServerbcrypt 密码验证HMAC-SHA256 token 签名
  • — systemd 服务port 9002开机自启

Changed

  • 安全认证升级Caddy basicauth → auth_proxy Cookie session
    • 所有保护服务gitea/dashboard/books/nav/brief/todo改为走 auth_proxy:9002
    • 新增 auth.xybkwd.top 子域作为登录入口
    • Session cookie: 7天过期HttpOnlySameSite=LaxDomain=.xybkwd.top
    • 密码验证不变bcrypttoken 签名防篡改HMAC-SHA256
  • — 去掉所有 basicauth改为 reverse_proxy localhost:9002
  • 服务清单更新books (Calibre-Web) 状态同步

Fixed

  • 移动端重复登录问题basicauth 每 ~1 小时要求重新输入密码
  • Cookie 跨子域失效:缺 Domain=.xybkwd.top 导致各子域不共享 cookie
  • Set-Cookie 值带多余引号:浏览器拒绝该 cookie

Security

  • 认证安全性不变bcrypt + HMAC-SHA256无明文密码传输
  • 公开服务blog/vaultwarden/memos不经过 auth_proxy不受影响

v1.2.0 (2026-06-15) — rollback

Removed

  • auth_proxy 对主服务的拦截:恢复 Caddy 直接反向代理到后端
    • gitea → localhost:3000, dashboard → localhost:9000, books → localhost:8083
    • nav/brief → file_server静态文件nav/api/* → todo 9001
    • auth.xybkwd.top 仍保留 auth_proxy:9002 作为登录门户(不影响其他服务)

Added

  • 认证方案待修复Caddy v2.11 basic_auth bcrypt hash 格式需要重新调试

Lesson Learned (Critical)

  • 🔴 铁律:所有配置变更必须先 commit 到 git再部署到生产环境
  • 本次事故的根因:直接修改 /etc/caddy/Caddyfile 后未及时 git commit 导致回滚时需要从 git 历史中找回正确版本commit 6c35f31
  • git 历史在此次事故中挽救了服务:回滚前险些无法恢复

2026-06-16

要闻流水线改造 v0.3

改动:

  1. fetch 脚本时效过滤 — fetch_news.py (48h) / fetch_policy.py (72h) / fetch_research.py (72h)
  2. 新增 archive_daily_brief.py — 每日要闻归档到 daily-brief 仓库(含跨日去重)
  3. 新增 cn_merge.py — 合并本地国内新闻到流水线
  4. 所有新闻条目增加 [MM-DD] 日期标记(支持多种时间格式解析)
  5. crontab 新增22:40 归档 / 05 3,9,15,21 cn_merge

架构变更:

  • 新增本地抓取层WorkBuddy 本地运行 local_fetch_cn.py通过 SCP 推送到东京
  • 数据源扩展新华网3路+ 微博热搜,约 113 条/轮
  • 浏览器展示和归档共享同一数据源news_summary.json

涉及文件:

  • 东京 ~/scripts/: fetch_news.py, fetch_policy.py, fetch_research.py, cn_merge.py(新)
  • 东京 ~/daily-brief/: archive_daily_brief.py(新), archive/2026/06/2026-06-16.md
  • 本地 Claw/: local_fetch_cn.py(新), local_fetch_daemon.py(新), start_cn_fetch.bat(新)