77 lines
3.2 KiB
Markdown
77 lines
3.2 KiB
Markdown
# 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 HTTPServer,bcrypt 密码验证,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天过期,HttpOnly,SameSite=Lax,Domain=.xybkwd.top
|
||
- 密码验证不变(bcrypt),token 签名防篡改(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 HTTPServer,bcrypt 密码验证,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天过期,HttpOnly,SameSite=Lax,Domain=.xybkwd.top
|
||
- 密码验证不变(bcrypt),token 签名防篡改(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 历史在此次事故中挽救了服务:回滚前险些无法恢复
|