整体结构与使用指引
这是技术部用于维护组织网盘的 SFTPGo 管理文档。如果你是第一次接触这套系统,先花 2 分钟看完这一页,确定你该看哪一部分。
你现在在看什么?
这是 SFTPGo 文件传输服务系统的管理文档。SFTPGo 是我们组织内部使用的网盘系统,用于安全地存储和共享文件。
SFTPGo 官方资源
SFTPGo 是一个开源项目,如果你需要了解 SFTPGo 的更多技术细节、最新功能或遇到需要查阅官方文档的情况,可以访问以下资源:
- 🌐 官方网站:https://sftpgo.com/(SFTPGo 项目主页)
- 📚 官方文档:https://docs.sftpgo.com/(完整的技术文档)
- 💻 GitHub 仓库:https://github.com/drakkan/sftpgo(源代码、Issue 追踪、Releases)
注意: 本文档是技术部内部使用的管理文档,侧重于组织内部的使用规范和管理流程。如果需要了解 SFTPGo 的功能特性、API 文档或配置选项等技术细节,请查阅官方文档。
一句话记住这套系统
服务器管「能不能」,Group 管「该不该」,User 只负责「用」。
- 服务器(Linux 文件系统):决定文件/目录是否"真实存在"且"可访问"
- Group(SFTPGo 中的权限组):决定用户"是否应该"有权限访问某个目录
- User(最终用户):只负责使用,不直接配置权限
三层权限关系图
SFTPGo 的权限有三层,用户访问文件时,三层都要通过才行:
flowchart TD
A[用户请求访问文件] --> B{Linux 文件系统权限}
B -->|不允许| Z[拒绝访问 ❌]
B -->|允许| C{SFTPGo Virtual Folder 配置}
C -->|不允许| Z
C -->|允许| D{Group 权限检查}
D -->|不允许| Z
D -->|允许| E[允许访问 ✅]
三层权限的含义:
-
Linux 文件系统权限(第一层)
- 检查目录是否存在
- 检查 SFTPGo 运行用户是否有权限访问
- 这一层由服务器运维人员负责
-
Virtual Folder 配置(第二层)
- 检查 Virtual Folder 是否允许这个操作(上传、下载等)
- Virtual Folder 是服务器路径到用户看到路径的映射
- 这一层由**网盘管理员(Admin)**负责
-
Group 权限(第三层)
- 检查用户是否属于能访问这个目录的 Group
- Group 的权限可以覆盖 Virtual Folder 的权限
- 这一层也由**网盘管理员(Admin)**负责
任意一层不允许 = 用户无法访问
你现在可能在哪个角色?
根据你的职责,选择对应的文档:
🔧 服务器运维人员(System)
你的工作:
- 在服务器上创建和管理目录
- 配置 Linux 文件系统权限
- 确保目录"真实存在"且"可访问"
你现在应该看:
你可能还需要:
- ⚠️ System 用户指南(如果你需要使用 System 账号进行维护)
👨💼 网盘管理员(Admin)
你的工作:
- 在 SFTPGo 后台配置 Virtual Folder
- 管理部门 Group 和用户权限
- 决定"谁应该访问哪个目录"
你现在应该看:
- 📖 权限模型与核心概念(必读,先理解概念)
- 🎯 Admin 管理 SOP(操作指南,最重要的一章)
- 🔍 故障排查速查表(遇到问题时查阅)
Admin 是最核心的角色,大部分权限配置都由你负责。
🛠️ 需要使用 System 用户的维护人员
你的工作:
- 处理紧急情况
- 修复权限异常
- 进行系统级操作
你现在应该看:
- 📖 权限模型与核心概念(先理解概念)
- ⚠️ System 用户指南(这是危险但必要的角色)
重要提示: System 用户权限极高,误操作影响范围大,使用前必须明确操作目的。
🔍 遇到问题需要排查
你现在应该看:
- 🔍 故障排查速查表
按照"现象 → 可能原因 → 检查顺序"的格式,快速定位问题。
文档结构说明
这套文档从三个视角描述 SFTPGo 的完整管理流程:
1. 服务器层面(Linux / 运维视角)
- 负责真实目录的创建与权限保障
- 确保 SFTPGo 运行用户对目录有访问权限
- 建立统一的目录结构
2. 网盘管理员(Admin)视角
- 负责 Virtual Folder 的定义
- 管理 Group 的结构与权限
- 配置 User 与 Group 的绑定关系
3. 系统级用户(System User)视角
- 系统维护用账号(危险但必要)
- 用于维护整体目录结构
- 处理权限异常和紧急文件处理
推荐阅读顺序
如果你是第一次接触这套系统:
-
先看这一页(你现在在这里)
- 理解整体架构和角色定位
- 确定你应该看哪一部分
-
再看概念层(权限模型与核心概念)
- 理解 Linux 权限 ≠ SFTPGo 权限
- 理解 Virtual Folder、Group 的作用
- 理解三层权限模型
-
然后看对应的 SOP
- 服务器运维 → 服务器层面 SOP
- 网盘管理员 → Admin 管理 SOP
- System 用户 → System 用户指南
-
遇到问题时
- 查阅 故障排查速查表
核心原则(再次强调)
服务器管「能不能」,Group 管「该不该」,User 只负责「用」。
记住这句话,能帮你快速理解整个系统的设计逻辑。
常见误解(提前避免)
在开始操作之前,先澄清几个常见误解:
❌ 误解 1:"我在 SFTPGo 后台配置好权限就够了"
不对。SFTPGo 的权限不能绕过 Linux 文件系统权限。即使后台配置得再完美,如果 Linux 层面不允许,用户还是无法访问。
❌ 误解 2:"Virtual Folder 创建了,用户就能看到"
不对。Virtual Folder 只是定义了一个映射关系,必须绑定到 Group,用户加入 Group 后才能看到。
❌ 误解 3:"直接给用户绑定 Virtual Folder 更方便"
不对。虽然技术上可以,但用 Group 管理才是正确的方式。用 Group 可以批量管理,不容易出错,也便于扩展。
❌ 误解 4:"System 用户权限最高,什么都能做"
不对。System 用户虽然权限高,但仍受 Linux 文件系统限制。如果 Linux 层面不允许,System 用户也访问不了。
风险提示
⚠️ SFTPGo 涉及文件传输和权限管理,操作不当可能导致数据泄露或丢失,请谨慎操作。
⚠️ 权限配置必须同时考虑 Linux 文件系统权限和 SFTPGo 内部权限,缺一不可。
⚠️ System 用户误操作影响范围最大,使用前必须明确操作目的。
文档导航
- 📖 权限模型与核心概念 - 先看这一章,理解核心概念
- 🔨 服务器层面 SOP - 服务器运维人员操作指南
- 🎯 Admin 管理 SOP - 网盘管理员操作指南(核心章节)
- ⚠️ System 用户指南 - System 用户使用规范
- 🔍 故障排查速查表 - 遇到问题时快速查找解决方案
需要帮助?
如果遇到问题:
- 先查阅 故障排查速查表
- 确认问题属于哪一层(Linux、Virtual Folder、Group)
- 联系对应的负责人:
- Linux 权限问题 → 联系服务器运维人员(System)
- SFTPGo 配置问题 → 联系网盘管理员(Admin)
- 其他问题 → 联系技术负责人