Files
alist-serve-resource/docs/SECURITY.md
T

1.5 KiB
Raw Blame History

安全要求(规格 §29/§52)

Secrets 管理

  • 绝不把 token/密码写死在 docker-compose.yml,全部走 .env(已 .gitignore)。
  • AList admin token、NocoDB token、n8n 加密密钥都只在 .env。
  • .env 加密备份(见 BACKUP_RESTORE.md),不提交 Git。

双层防护(规格 §16/§52)

  1. 应用层:AList role scope + Check path limit + read-only bitmask。
  2. 文件系统层:NAS 目录以 :ro 只读挂载。

即使 AList 权限配置出错,客户也无法通过 AList 改写 NAS 文件。

网络暴露

服务 公网
AList 客户入口 ✅ 经 DSM nginx(access.hoelee.com)
AList Admin API ❌ 仅内网(n8n 经 bridge_hoelee)
NocoDB admin ❌ 不直连公网
n8n editor ❌ 不直连公网

权限默认值(客户 user)

  • permission = 16384(仅 Check path limit bit,所有写位=0)
  • 无 upload/mkdir/rename/move/copy/delete/webdav-write/ftp-write
  • 每客户专属 role,绝不共享(避免权限污染,规格 §7)

路径安全(规格 §32)

  • 资源路径只允许 /Class/... 逻辑路径。
  • 拒绝 ../、编码遍历、反斜杠、绝对 host 路径等。
  • NocoDB 中的 alist_path 需校验(n8n 侧或表单侧)。

强密码 / 2FA

  • AList admin 强密码;支持 2FA 则启用(/api/admin/user/cancel_2fa 已确认存在,说明 2FA 可管理)。
  • 客户密码由你设定初值,首次交付后建议客户自行改。