部署与安全

把 NoteFast 暴露到局域网或公网之前,需要了解的鉴权、CORS 与环境变量。

NoteFast 默认面向本机(127.0.0.1)运行。当你打算把它暴露到局域网或公网时,请先完成下面的鉴权配置。

鉴权模式

规则只有一条:只要设置了任意一个鉴权变量,服务器就要求认证;一个都不设,则以免鉴权本地模式运行(启动时会有警告)。

变量作用
AUTH_PASSWORDWeb UI 登录密码
API_TOKENAPI / MCP 的 Bearer 令牌
READ_TOKEN / WRITE_TOKEN可选的读写分离令牌(替代单一 API_TOKEN

CORS

CORS_ORIGINS 是 Web UI 的跨域来源白名单,逗号分隔。

警告* 会禁用来源限制。在免鉴权模式下,这意味着任意网页都能读写你的整个知识库——仅限本机/内网开发使用,公网部署绝不要这样组合。

常用环境变量

变量说明
PORT服务端口(默认 3140)
DATA_DIRSQLite 与媒体文件的存储路径
AUTH_PASSWORD / API_TOKENWeb 密码 / API 令牌(见上)
READ_TOKEN / WRITE_TOKEN可选读写分离令牌
CORS_ORIGINS逗号分隔的来源白名单

AI 供应商不在环境变量里配置——运行时在 设置 → AI 中完成,共三个槽位:对话(chat)、向量(embedding)、重排序(reranker)。

反向代理

仓库附带 Caddyfile.exampledocker-compose.https.yml,可作为 HTTPS 终结与反代的起点。基本原则:

  • HTTPS 终结在代理层完成,NoteFast 本身只监听内网地址;
  • 备份配置(data/backup.config.json)包含密钥,请保持文件权限为 0600
  • 对外分享只读链接时优先使用文档分享的可过期链接,而不是直接开放整库。