【免费下载链接】MaliangAINovalWriter
马良写作 AINoval — AI novel writer for Chinese webnovels(网文)| 多智能体AI小说创作平台:三级大纲、知识图谱一致性、30万字连载
马良AINovalWriter(MaliangAINovalWriter)是一款面向中文网文的多智能体 AI 小说创作平台,支持三级大纲、知识图谱一致性与 30 万字长连载创作。将它部署到生产环境前,JWT 密钥、AI API Key 与环境变量是三道最关键的安全关口。本文提供一份可直接执行的加固清单,帮你在上线前堵住常见的泄密隐患。
一、为什么生产部署必须做安全加固
马良AINovalWriter 后端采用 Spring Boot 3(WebFlux 响应式)+ Java 21,认证体系为Spring Security + JWT,并依赖 MongoDB、Chroma 向量库、RabbitMQ 以及多家大模型服务。这意味着一个生产实例上集中了至少四类敏感信息:
| 类别 | 典型变量 | 泄露后果 |
|---|---|---|
| 认证签名 | JWT_SECRET | 攻击者可伪造任意用户(含管理员)的登录令牌 |
| 大模型密钥 | OPENAI_API_KEY、GEMINI_API_KEY、ANTHROPIC_API_KEY | 被盗刷产生高额 Token 账单 |
| 数据连接 | SPRING_DATA_MONGODB_URI | 小说稿件、用户数据被拖库 |
| 云服务 | 对象存储 / 短信服务凭据 | 存储桶被读写、短信被刷 |
官方部署文档特别强调:production.env.example仅用于演示,生产环境请务必替换为你自己的安全值。
二、第一步:正确落盘环境变量文件
平台提供 Docker 一键部署,所有运行参数集中在deploy/open/目录下,目录结构如下(见 README.md):
deploy/ ├─ dist/ │ ├─ ainoval-server.jar # 预编译后端 │ └─ web/ # 预编译前端静态文件 ├─ open/ │ ├─ Dockerfile # 开源镜像 Dockerfile │ ├─ docker-compose.yml # 开源 docker-compose │ ├─ production.env.example # 环境变量示例 │ └─ production.env # 实际运行环境变量加固操作:
将示例文件复制为实际配置:
cp deploy/open/production.env.example deploy/open/production.env逐项修改
production.env,重点是Mongo、JWT、对象存储、代理、AI API Key。确保
production.env不提交到版本库(它包含生产凭据,只应存在于部署服务器本机)。在仓库根目录构建并启动:
docker compose -f deploy/open/docker-compose.yml build docker compose -f deploy/open/docker-compose.yml up -d启动后访问
http://localhost:18080/,相关 compose 配置见 deploy/open/docker-compose.yml,镜像构建规则见 deploy/open/Dockerfile。
三、JWT_SECRET:登录令牌签名的安全核心
后端用 Spring Security + JWT 完成登录态校验。JWT_SECRET是签发与校验令牌的对称密钥,官方文档明确要求"务必改成强随机值"。
加固要点:
长度:建议使用 256 位(32 字节)以上随机串,避免使用字典词或项目名拼接。
生成方法:在服务器上直接生成并写入
production.env,不要手工输入:# 生成 32 字节随机密钥(Base64) openssl rand -base64 32 # 或生成 64 位十六进制串 openssl rand -hex 32轮换意识:一旦怀疑
JWT_SECRET泄露,更换后所有在线用户会掉线重新登录——这是可以接受的安全代价。禁止复用:开发、测试、生产三套环境的
JWT_SECRET必须互不相同。
四、AI API Key:把大模型账单风险关进笼子
马良AINovalWriter 支持 OpenAI、Anthropic、Gemini 及 OpenRouter 兼容模型,平台提供双轨制的密钥管理,这正是它安全设计的亮点:
- 公共模型池:由管理员在后台统一配置,Key 保存在服务端,供全体用户共享调用;
- 私有 API Key:用户可添加个人 Key 使用专属模型,平台还提供API Key 有效性测试功能。
生产加固清单:
在
production.env中为公共模型池配置平台级密钥:OPENAI_API_KEY=sk-你的真实密钥 GEMINI_API_KEY=GEMINI密钥 ANTHROPIC_API_KEY=ANTHROPIC密钥为每个 Key 设置支出上限(Spending Limit)——在对应服务商控制台为生产 Key 单独建 Key 并设月度预算,被盗刷时自动熔断;
后台「公共模型管理」支持按供应商分组展示模型,每个模型可做API Key 池验证并标记"已验证 / 未验证",上线前把未验证项全部补齐或删除;
结合「模型定价与计费审计」模块,定期核对 LLM 调用日志的成本核算结果,异常消耗可第一时间通过 LLM 可观测性面板(按用户/提供商/模型多维过滤)定位来源。
五、数据库、向量库与端口
| 变量 | 默认值 / 说明 | 加固建议 |
|---|---|---|
SPRING_DATA_MONGODB_URI | mongodb://mongo:27017/ainovel | 生产建议为 Mongo 设置账号密码与 TLS,避免仅靠内网隔离 |
VECTORSTORE_CHROMA_ENABLED/CHROMA_URL | Chroma 向量库开关与地址 | 不用知识库拆书功能时可关闭,减少攻击面 |
SERVER_PORT | 默认对外 18080 | 仅在网关/反代暴露必要端口 |
JVM_XMS/JVM_XMX | JVM 堆内存 | 按机器规格设置,防止 OOM 导致整站不可用 |
STORAGE_PROVIDER | local/alioss等 | 启用阿里云 OSS 时同样要走环境变量注入凭据,勿硬编码 |
💡 提示:MongoDB 首次启动需初始化副本集,健康检查可能超时(容器显示 Error 属正常现象),等待 10–20 秒后重新
up -d即可,详见 README.md 故障排除章节。
六、最容易被忽视的一步:改掉默认管理员密码
服务首次启动后需要运行初始化脚本创建管理员账号:
- Linux / Mac:
./deploy/init-admin.sh(见 deploy/init-admin.sh) - Windows:
.\deploy\init-admin.bat
脚本会自动创建:
| 项 | 默认值 |
|---|---|
| 用户名 | admin |
| 初始密码 | 123456⚠️ |
| 角色 | ROLE_ADMIN |
| 初始积分 | 999999 |
管理后台地址为http://localhost:18080/admin。官方安全提示:请在首次登录后立即修改默认密码!一个挂着admin/123456的公网后台,等于把公共模型池、全部 API Key 池和用户管理权限直接开放给陌生人。
七、上线前生产加固核对清单 ✅
逐项打勾后再对外放通流量:
production.env由production.env.example复制而来,且所有示例值已替换为安全值JWT_SECRET为 256 位以上随机值,且与其他环境不重复OPENAI_API_KEY、GEMINI_API_KEY、ANTHROPIC_API_KEY已在服务商控制台设置支出上限- 公共模型池中的 Key 均通过后台"API Key 池验证",无"未验证"残留
SPRING_DATA_MONGODB_URI指向带鉴权的实例,非匿名裸奔- 默认
admin/123456已登录并修改密码 production.env未提交进版本库,服务器文件权限收敛到运行账号- 已通过「LLM 可观测性」面板确认可正常查看调用日志与 Token 用量
八、日常运维速查
# 查看日志(排查 401/404 等认证问题) docker compose -f deploy/open/docker-compose.yml logs -f ainoval # 重启服务 docker compose -f deploy/open/docker-compose.yml restart ainoval # 停止并删除容器 docker compose -f deploy/open/docker-compose.yml down📌 完整部署文档、故障排除(如管理后台 401、Mongo 首次启动 Error)均维护在 README.md 的"快速开始 (Docker 一键部署)"章节,环境变量节选说明见 README.md。
写在最后
对马良AINovalWriter 这类平台级应用来说,安全加固没有银弹,但有标准动作:密钥走环境变量、JWT 用强随机、API Key 设限额、默认密码必修改。照这份清单走一遍,你的生产实例就能以较低的运维成本,守住创作者的稿件与平台的大模型预算。
【免费下载链接】MaliangAINovalWriter
马良写作 AINoval — AI novel writer for Chinese webnovels(网文)| 多智能体AI小说创作平台:三级大纲、知识图谱一致性、30万字连载
相关推荐
LobeChat安全加固:生产环境安全配置终极指南
LobeChat安全加固:生产环境安全配置终极指南 LobeChat作为一款强大的AI协作平台,在生产环境中部署时需要进行全面的安全加固。本文将详细介绍Lobe
人工智能大模型AI AgentAI 应用多智能体前端后端本地部署工具调用OmniRoute 环境变量完全参考:从必备密钥到生产加固的配置实战指南
OmniRoute 环境变量完全参考:从必备密钥到生产加固的配置实战指南 本文以 OmniRoute 官方 环境变量参考手册 https://link.gitc
人工智能后端API网关LLM 网关认证鉴权Verba环境变量配置:安全管理API密钥
Verba环境变量配置:安全管理API密钥 为什么环境变量是RAG系统的安全基石 在构建基于Retrieval Augmented Generation(RAG
人工智能大模型RAGAI 应用本地部署后端
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考