Commit Graph
100 Commits
Author SHA1 Message Date
qing 6330e04474 fix: smtp .env 手动解析替代 dotenv,同时支持 KEY=VALUE 和 KEY VALUE 格式 2026-07-28 17:34:55 +08:00
qing df518d1adb feat: 注册强制邮箱验证码(gateway v0.5.0 新增 /register/send_code,pymsg 调 smtp) 2026-07-28 17:29:52 +08:00
qing 9078c4d051 refactor: smtp 改造为 pymsg TCP 服务并修复 NameError/finally/KeyError 等已知 bug 2026-07-28 17:12:45 +08:00
qing 78ad3e6d57 移植bot4cj 2026-07-28 12:44:07 +08:00
qing 7803843155 ^-^ 2026-07-28 12:37:39 +08:00
qing ec755a30f2 3d打印件 2026-07-28 12:34:02 +08:00
qing 483c5f227f fix: 发布节点期间同步禁用重置/删除按钮,防止误触 2026-07-28 12:17:27 +08:00
qing bfd2d334fe fix: 前端按钮防重复点击,避免重复请求(dnfs提交/删除、view刷新、验证码刷新) 2026-07-28 12:10:48 +08:00
qing 50f209e84a fix: X-Frame-Options/frame-ancestors 改为同源以修复条例弹窗空白 2026-07-28 11:53:35 +08:00
qing 680d28b616 ui: 用户使用条例改为弹窗显示并移除 LICENSE.html 返回按钮 2026-07-28 11:46:25 +08:00
qing 4d16bc32fc security: CORS 白名单移除 localhost 并改为 config.ini 驱动
扫描发现生产 CORS 含 http://localhost:9200(硬编码于 fsys.py),且 config.ini 的 cors 段(通配符 *)从未被读取。白名单改为从 config.ini 读取,生产值仅 qsont.me/yhdet.top,localhost 仅限本地开发显式配置。
2026-07-28 11:40:19 +08:00
qing 7726857d6b feat: 新增用户使用条例独立页面并在登录页引用
新增 LICENSE.html(六章条例,开源社区定位,复用主题样式);登录页勾选框文案改为链接新标签页打开,不影响勾选交互与表单状态。
2026-07-28 10:36:06 +08:00
qing 3ef7d1b780 fix: 修复验证码图片被输入框挤换行,改为右侧同一行
theme.css 全局设定文本输入框 display:block;width:100%,导致验证码图片无法与之同行;改用 flex 容器包裹(输入框 flex:1、图片 flex:none 居右),布局与主题风格一致。
2026-07-28 10:29:22 +08:00
qing 62804d242c ui: 验证码改为 4 位,登录页图片移到输入框左侧
captcha 服务 CAPTCHA_LEN 调整为 4 并适配字符间距;登录页验证码图片与输入框换序,同一行展示更紧凑。
2026-07-28 10:24:48 +08:00
qing a5e581ef24 fix: CSP img-src 放行 blob:,修复验证码图片被拦截
登录页验证码用 URL.createObjectURL 生成的 blob: URL 显示,被 img-src 'self' data: 拦截导致图片无法加载;五处 CSP 定义(waf 边缘 + 四个 Flask 中间件副本)同步放宽。
2026-07-28 10:19:47 +08:00
qing 6fcb70d235 feat: 登录页接入图形验证码,登录接口强制校验
登录页展示 captcha 图形码(点击刷新),登录请求携带 captcha_token/captcha_answer;gateway 的 /login 启用验证码校验,经 pymsg 调 captcha verify 路由(fail-closed),补齐防爆破短板。
2026-07-28 10:15:01 +08:00
qing 323dd3061b rewrite captcha 2026-07-28 10:07:32 +08:00
qing 44c1e5ef72 feat: captcha 改造为 pymsg/TCP 服务,gateway 新增图形码代理路由
captcha 参照 dbv2 统一为 pymsg 协议(image/verify/health 路由),与主干 RPC 栈对齐;gateway 新增 GET /captcha/image 做 HTTP→pymsg 转换,解码 base64 PNG 并以原契约(image/png + X-Captcha-Token)返回浏览器。
2026-07-28 09:54:08 +08:00
qing d06546f6bf 测试模块初步完成 2026-07-28 09:39:37 +08:00
qing 4ad3fbfca8 fix: 修复公开页面因旧 Cookie 验签失败误返回 401
浏览器会自动给每个请求携带 q4_token,gateway 重启轮换内存 RSA 密钥后旧凭证验签失败,导致无需登录的公开页面也 401。代理层改为仅对需鉴权目标校验凭证,公开目标跳过;前端遇 401 自动跳转登录页自愈。
2026-07-28 09:31:10 +08:00
qing b2ddd9e7e3 security: waf 边缘统一注入安全响应头
外部扫描发现站点缺少安全响应头。在 waf 反代/403/502 三个出站路径统一注入 XFO/nosniff/Referrer-Policy/Permissions-Policy/HSTS/CSP,下游同名头一律覆盖避免重复;static 补上漏调用的 apply_security_headers 做纵深防御。
2026-07-28 09:19:43 +08:00
qing e89578fa82 security: Token 改为 HttpOnly Cookie 下发,消除 XSS 窃取面
登录时网关签发 HttpOnly+Secure+SameSite=Lax 的 q4_token Cookie,前端不再经手 Token;网关代理时支持从 Cookie 验签并向下游注入 Authorization(dnfs 零改动),新增 /logout 清除 Cookie,static 代理路由兼容 Cookie 转 Bearer。
2026-07-28 09:07:12 +08:00
qing 65cfaf97a1 docs: 按代码实况修正根 README 与实现不符的描述
db 实为 pymsg/TCP(非 HTTP),ai_review 实为 fail-closed,captcha 路由与实现方式、static 的 dnfs 代理与账号旁路、gateway 用户存储与 core 守护机制等均按代码核实结果更正。
2026-07-28 08:33:30 +08:00
qing 6b77cdcf3a feat: 新增俄罗斯方块小游戏(games/game7.html)
纯 HTML 单文件实现,Canvas 渲染,含 7-bag 发牌、暂存、落点虚影、硬降/软降、等级加速与触屏按键,最高分本地持久化。
2026-07-28 01:11:58 +08:00
qing ed3108f55c docs: 补全根 README 中遗漏的 captcha/smtp/aibox 服务
- 各服务说明表新增 captcha/smtp/aibox 三行
- 端口一览新增 smtp(:8008)/aibox(:8765)
- 运行清单新增 smtp/aibox 启动项
- 日志链路与 init.txt 提及补全 smtp/aibox
- 新增 captcha/smtp/aibox 三个子章节(对照 init.txt 与各服务源码)
2026-07-27 23:00:08 +08:00
qing ee44e1bef1 docs & ui: 完善 captcha/aibox 文档,登录注册改为邮箱制
- captcha/README.md: 补充字段级接口文档与错误码表
- aibox/README.md: 对照 main.py 源码核对修正(入口/模型/工具/配置)
- static/public/login.html & register.html: 用户名改为邮箱
- static/public/js/register.js: 合并注册页双邮箱框为单一邮箱字段
2026-07-27 22:51:57 +08:00
qing f601efdd3f refix 2026-07-27 22:27:18 +08:00
qing c58cafcdcf fixbug: 机器人在定时任务中创建重复的定时任务 2026-07-27 22:11:02 +08:00
qing 3501168f45 inst aibo 2026-07-27 22:03:50 +08:00
qing 13f3eb8f88 DEV 2026-07-27 21:43:56 +08:00
qing 1b60ab0a2e 增加运维机器人单元 2026-07-27 21:39:53 +08:00
qing 8c74d93a76 security fixup 2026-07-27 17:28:15 +08:00
qing 40eb522e5b 安全策略 2026-07-27 15:53:09 +08:00
qing a67f190634 “返回上一层”按钮样式 2026-07-27 15:41:14 +08:00
qing 9b4a0a6a16 折叠minimap 2026-07-27 14:51:41 +08:00
qing 097fb7ecbb Merge branch 'dev_qing' of https://git.cancerai.top/qing/micro_servers into dev_qing 2026-07-27 14:47:31 +08:00
qing 167ef235e6 fixbug 100% cpu 2026-07-27 14:47:12 +08:00
qing f056da1dfc update minimap 2026-07-27 12:36:59 +08:00
qing 5edfad7842 refix 2026-07-27 12:33:27 +08:00
qing 39bf2684a4 update css for dnfs.minimap 2026-07-27 12:29:51 +08:00
qing 614368eb93 fontend update without css 2026-07-27 12:24:06 +08:00
qing ce9337fe0d Merge branch 'dev_qing' of https://git.cancerai.top/qing/micro_servers into dev_qing 2026-07-27 10:23:21 +08:00
qing 18ac572442 更新dbv2、删除旧的db1、为static添加log 2026-07-27 10:22:16 +08:00
qing 58e9391503 refix 2026-07-27 09:28:27 +08:00
qing b790e18024 Merge branch 'dev_qing' of https://git.cancerai.top/qing/micro_servers into dev_qing 2026-07-27 09:21:20 +08:00
qing 08021015b1 更新msg客户端 2026-07-27 09:21:06 +08:00
qing 179afb2674 Merge branch 'dev_qing' of https://git.cancerai.top/qing/micro_servers into dev_qing 2026-07-26 21:53:46 +08:00
qing 6efb792133 C++版本的MsgClient 2026-07-26 21:48:14 +08:00
qing 3d2278f6b7 ^-^ rename 2026-07-26 21:27:40 +08:00
qing 4fe0689cf6 修复db客户端无法推日志的问题 2026-07-26 21:26:17 +08:00
qing fb85203c9b Merge branch 'dev_qing' of https://git.cancerai.top/qing/micro_servers into dev_qing 2026-07-26 21:05:09 +08:00
qing 1a39e87c8c 更新pymsg 2026-07-26 21:04:42 +08:00
qing 8ec42df779 初步开发了新的pymsg,并且应用在了dnfs上面 2026-07-26 17:57:27 +08:00
qing 0e64b3ca26 refix 2026-07-26 14:41:38 +08:00
qing 303d151fce fix without test 2026-07-26 14:33:30 +08:00
qing 896cfc32ca 网友修x改、我修复之后 2026-07-26 12:06:56 +08:00
qing 060b7fc7ad 修复CPU占用100%的问题 2026-07-26 01:22:23 +08:00
qing 96213d58bd 迁移数据库到db服务 2026-07-26 01:10:21 +08:00
qing 847f5fe8ab Merge branch 'dev_qing' of https://git.cancerai.top/qing/micro_servers into dev_qing 2026-07-25 21:55:41 +08:00
qing 49c0dca8cf waf log >> db.logs 2026-07-25 21:54:30 +08:00
qing 2da504cdc4 自启动脚本的顺序修改,db在最前面 2026-07-25 21:10:51 +08:00
qing 9349b8248f fix 2026-07-25 21:08:17 +08:00
qing 013e130a08 logs in db develop 2026-07-25 21:01:46 +08:00
qing a4479696eb dos2unix 2026-07-25 20:54:57 +08:00
qing 653370a7c3 更新文档 2026-07-25 20:47:04 +08:00
qing b5c1be1b90 修改文档 2026-07-25 20:42:30 +08:00
qing 12173b179d jialiao 2026-07-25 17:36:14 +08:00
qing b15745f35a 更新文档 2026-07-25 14:34:39 +08:00
qing 17c22a8cd3 管理员也不能更新别人的节点 2026-07-25 14:25:06 +08:00
qing 3e9ff99eaa 只能更新自己的节点 2026-07-25 14:24:36 +08:00
qing efbe2b36f3 节点所有权 2026-07-25 14:20:08 +08:00
qing 46b8f750ae fixbug 2026-07-25 13:07:18 +08:00
qing 15a4bac484 waf规则文件拉取脚本 2026-07-25 11:22:51 +08:00
qing c028e46d00 fixbug 2026-07-25 11:15:42 +08:00
qing 3d8cf52503 白名单域名:硬编码 https://qs***.me 、https://www.qs***.me ,加两个本地开发域名(127.0.0.1:8443、localhost:8443)。
动态回填 Origin:仅当请求 Origin 命中白名单时才设置 Access-Control-Allow-Origin,否则不返回该头(浏览器会拒绝跨域请求)。
追加 Vary: Origin:告诉缓存该响应因 Origin 而异,避免缓存误用。
移除 Access-Control-Allow-Credentials: true:当前用 Bearer token(请求头),非 cookie,不需要此头;保留反而增加风险面。
2026-07-25 10:22:58 +08:00
qing a9e50bb598 修 proxy.go 里 Director 的 X-Forwarded-For 带端口号问题。ServeHTTP 里已经有剥离端口的逻辑,Director 里复用同样的处理就行。 2026-07-25 10:21:51 +08:00
qing 7927d87c0a 在循环内先将 char c 转为 unsigned char uc,再传入 std::isupper / std::islower / std::isdigit 2026-07-25 10:20:21 +08:00
qing 6f44d9497b 修复special_headers过滤,修复XFF,添加is_safe_path 2026-07-25 10:10:57 +08:00
qing bfc361ddfb 之前的修复有遗漏 2026-07-25 10:08:02 +08:00
qing efae81b230 修复源码信息泄漏以及token无限期问题 2026-07-25 10:05:24 +08:00
qing 13be4bd8ca 修复线程安全问题,以及一个别的 2026-07-25 09:58:25 +08:00
qing fcf3084d0f 更新文档 2026-07-25 02:11:28 +08:00
qing c5fc6f1076 fix up waf and gateway 2026-07-25 01:54:43 +08:00
qing 27c1021ad2 降级goy 2026-07-25 01:41:35 +08:00
qing b66c267268 keep fix 2026-07-25 01:38:42 +08:00
qing 76e3a06c97 fixx but can't connect 2026-07-25 01:36:15 +08:00
qing 7df0d51879 set proxy 2026-07-25 01:33:13 +08:00
qing 202f2804b2 增加waf模块 2026-07-25 01:27:08 +08:00
qing fbccc5d909 网友修改版 2026-07-25 00:21:16 +08:00
qing 290332c70c 更新README.md 2026-07-24 22:17:20 +08:00
qing 76d9b4451d 默认页面 2026-07-24 12:24:37 +08:00
qing 7a03225f4e packaged 2026-07-24 11:45:07 +08:00
qing 3a09e64e74 微调 2026-07-23 12:58:44 +08:00
qing f133288586 增加备案号 2026-07-23 12:04:56 +08:00
qing 888e1e56f5 9201 => 443 2026-07-23 12:00:38 +08:00
qing c83bc17cfc 游戏 2026-07-23 11:30:26 +08:00
qing 874630d84e 加注释 2026-07-23 11:06:22 +08:00
qing 47a84e3232 记录笔记,脚本还无法在编译状态下稳定运行 2026-07-23 10:48:56 +08:00
qing 2123bdd254 fix frozen path 2026-07-23 10:19:14 +08:00
qing f8ecd18561 ^-^ 2026-07-23 10:16:41 +08:00