- 支持 TRUST_PROXY 配置,由 express 正确解析客户端 IP,防止伪造 X-Forwarded-For - 修复 IP 封锁使用对象作为 Map key 导致失效的问题,改用字符串 IP - 主密码解锁失败时记录 IP 失败次数,达到阈值后封锁 - 补充条目更新操作的审计日志
41 行
1.8 KiB
Bash
41 行
1.8 KiB
Bash
# 复制为 .env 或直接写在 docker-compose 的 environment 中
|
||
# 敏感值(口令固定串、SESSION_SECRET)建议用环境变量注入,不要写死进 config.js
|
||
|
||
# APP 门户口令:dynamic=当天日期+固定串,static=固定口令
|
||
APP_PW_MODE=dynamic
|
||
APP_PW_DATE_FMT=yyyymmdd
|
||
APP_PW_DATE_POS=prefix
|
||
APP_PW_DYNAMIC=你的固定部分
|
||
APP_PW_STATIC=改成你的强口令
|
||
|
||
# 密码库 / 密钥文件路径(容器内)
|
||
KDBX_PATH=/app/vault/vault.kdbx
|
||
KEYFILE_PATH=/app/vault/vault.key
|
||
|
||
# 权限:false=只读(默认),true=可编辑(需把 compose 里 vault 挂载改 :rw)
|
||
WRITABLE=false
|
||
|
||
# 会话
|
||
SESSION_SECRET=改成随机长字符串
|
||
SESSION_MAX_AGE=1800000
|
||
# 反向代理层数/地址(如 "1" 或前端 Nginx 的 "10.0.0.0/8")。部署在 Nginx/Caddy 后必须设置,
|
||
# 否则攻击者可用伪造的 X-Forwarded-For 绕过 IP 封锁。直连部署留空。
|
||
TRUST_PROXY=
|
||
|
||
# 审计日志:本地文件持久化目录(按大小自动切分,默认 ./logs)
|
||
LOG_DIR=logs
|
||
# 审计日志单文件切分阈值:日志文件达到该体积后滚动切分为 audit.1.log / audit.2.log ...
|
||
# 支持单位 K/M/G(不写单位按字节)。默认 5M(即 5242880 字节)
|
||
AUDIT_FILE_MAX=100M
|
||
# 审计日志切分文件最多保留份数(audit.1.log ~ audit.N.log,超出最旧的被删除)。默认 10
|
||
AUDIT_FILE_KEEP=10
|
||
|
||
# HTTPS(安全前置要求):提供证书后自动以 HTTPS 启动,并把 HTTP 重定向到 HTTPS
|
||
# 未提供证书时,系统会自动生成一份自签证书(默认写入 SSL_KEY/SSL_CERT 路径)并启用 HTTPS
|
||
# - 本地:直接 node gen-cert.js 可预生成;docker 场景下 compose 已挂载 ./ssl 持久化证书
|
||
# - 生产环境请替换为受信任 CA 签发的证书
|
||
SSL_KEY=ssl/key.pem
|
||
SSL_CERT=ssl/cert.pem
|
||
|
||
PORT=3000
|