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

41 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 安全要求(规格 §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 可管理)。
- 客户密码由你设定初值,首次交付后建议客户自行改。