Files
server-ops/CHANGELOG.md

3.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 历史在此次事故中挽救了服务:回滚前险些无法恢复