08. 安全加固与备份

New API 一旦开放给别人用,就相当于把 CPA 上游能力包装成了一个可分发入口。安全重点是:不要泄露 CPA key,不要让后台裸奔,不要把端口开放给全网。

威胁模型

风险后果
New API 管理员密码泄露别人可以改渠道、看日志、发 token
用户 token 泄露额度被刷光
CPA key 泄露绕过 New API,直接打你的 CPA
3000 对全网开放被扫描、爆破、刷接口
SQLite 数据丢失用户、渠道、令牌、日志丢失

必做项

1. 管理员密码足够强

初始化管理员后,立即确认密码强度。不要用简单密码。

2. 安全组白名单

New API 后台阶段建议:

端口来源
22你的本机公网 IP
3000你的本机公网 IP
8317你的本机公网 IP,或只允许服务器内部访问

临时测试可以 0.0.0.0/0,测试完成后改回白名单。

3. 不把 CPA key 发给用户

用户只拿 New API 里生成的 token。

CPA key 只填在 New API 渠道里,作为上游密钥保存。

4. 不把敏感内容写进笔记和截图

需要打码:

sk-****
密码
OAuth token
数据库文件

5. 定期备份

New API 的关键数据目录:

/root/new-api/data

备份:

tar czf new-api-backup-$(date +%F).tgz /root/new-api/data

建议加密后再放云盘:

gpg --symmetric --cipher-algo AES256 new-api-backup-2026-05-09.tgz
shred -u new-api-backup-2026-05-09.tgz

推荐项

6. 上 HTTPS

直接用 http://服务器公网IP:3000 时,token 会明文经过网络。长期使用建议上域名和 HTTPS。

常见做法:

域名 -> Caddy/Nginx :443 -> New API :3000

然后客户端 Base URL 改成:

https://你的域名/v1

7. 后台和 API 分开限制

如果用反代,可以限制后台路径只允许你的 IP,API 路径开放给用户 IP。

大致思路:

/panel /admin /setting 等后台路径 -> 只允许管理员 IP
/v1/* -> 允许用户访问

具体路径要以后按 New API 实际路由再细化。

8. 日志和异常用量巡检

定期看:

docker logs --tail 100 new-api

后台也要看:

  • 用户调用日志
  • 渠道错误率
  • token 用量异常
  • 是否有大量失败鉴权

不要做

  • 不要把 3000 永久开放给 0.0.0.0/0 还使用弱密码。
  • 不要把 CPA key 发给朋友。
  • 不要把 New API token 写进公开仓库。
  • 不要把 /root/new-api/data 直接同步到公开网盘。
  • 不要用同一个管理员账号给多人登录。