深度优化: 修复跨服务器登录、密码哈希、仪表盘UI、流量趋势等12项问题

### 严重修复
1. 跨服务器无法登录 - 新增SESSION_COOKIE_DOMAIN/SECURE/NAME配置
2. SOCKS5用户密码明文存储→bcrypt哈希(兼容自动迁移)
3. 仪表盘审计日志不显示→替换为空循环为真实API加载
4. 管理员登录防爆破未生效→auth.py集成check_fail2ban

### 中等问题修复
5. 流量趋势图表无数据→新增record_traffic_snapshot后台线程
6. 网络流量累计值跳变→新增基线差值机制
7. asyncio连接计数非线程安全→加锁保护

### 优化改进
8. API密钥页面截断文本修复
9. 新增gunicorn/bcrypt依赖
10. 更新README环境变量文档和生产建议
11. 登录密码常量时间对比防时序攻击
12. 仪表盘图表添加animation:false防卡顿
This commit is contained in:
Your Name
2026-07-16 22:13:14 +08:00
parent 00d9750662
commit 06470512f6
12 changed files with 186 additions and 27 deletions
+2 -2
View File
@@ -173,9 +173,9 @@ class ConnectionHandler:
return False
passwd = passwd.decode("utf-8", errors="replace")
# 验证
# 验证(使用 bcrypt 兼容验证)
user = self.user_service.get_user(username)
if user is None or user.password != passwd or not user.is_active():
if user is None or not user.check_password(passwd) or not user.is_active():
log.warning("认证失败: %s (user=%s)", self.src_ip, username)
await self.user_service.log_event("auth_fail", username,
self.src_ip, "密码错误或账号不可用")