鉴权与安全设置:从密码保护到 OAuth 登录
为什么要管这个
它的默认姿态是保守的:只监听本机回环地址、默认开 IP 白名单——局域网都进不来,更别说公网。这套默认值保护的是你填进去的 API 密钥和聊天隐私。一旦打算开放访问,下面的每一层都要过一遍。
访问控制的几层选择
Basic Auth——最简单的门锁
配置里开 basicAuthMode,访问时弹用户名密码框。个人或双人小环境够了。
多用户账户——每人一个数据目录
开 enableUserAccounts 后,每个用户有独立的角色卡、聊天与预设,互不可见。管理员在前端面板建号管号;忘了密码可用命令行重置(node recover.js 用户名 新密码,不给新密码则清空),也支持网页端发起恢复、恢复码打印在服务端控制台。
配套开关:
- 自助注册——登录页放「创建账户」表单,默认关闭,面板里手动开
- 隐蔽登录——不暴露真实登录页形态,防扫描
OAuth 登录——社区服务器的标配
- GitHub 登录——授权后自动建号关联
- Discord 登录——可加门槛:必须是指定服务器的成员、必须持有特定身份组
白名单与配额
- IP 白名单——默认开启;要放行局域网,需同时改监听地址和把网段加进白名单
- 存储配额——管理员给每个用户设磁盘上限,防个别人塞爆服务器
公网暴露前的检查清单
- 反向代理加 HTTPS(Nginx / Caddy 等)
- Basic Auth 或多用户至少开一个,绝不能裸奔
- IP 白名单收紧到必要网段
- 密钥只填在你信任的实例上;多人实例给用户配额
- 服务端日志对管理员可见,出事有据可查
实例内还想看什么
具体配置项名与默认值可能随版本调整,以官方配置文档为准。