跳到主要内容
版本:Current

Admin 用户 SOP

本部分适用于

如果你负责后台配置、用户、部门的管理,这一章就是为你准备的。

你的工作重点:

  • Virtual Folder 的定义(把服务器路径映射成用户看到的路径)
  • Group 的结构与权限(部门权限管理)
  • User 与 Group 的绑定关系(用户属于哪个部门)

你不负责:

  • 服务器目录是否存在(这是服务器运维人员的工作)
  • Linux 权限问题(这也是服务器运维人员的工作)
  • 系统级维护操作(这是 System 用户的工作)

Admin 的职责边界(必须明确)

Admin 负责的是:

Virtual Folder 的定义

  • 创建 Virtual Folder,定义服务器路径到用户路径的映射
  • 配置 Virtual Folder 的基本权限(list、upload、download 等)

Group 的结构与权限

  • 创建和管理 Group(部门)
  • 将 Virtual Folder 绑定到 Group
  • 配置 Group 对 Virtual Folder 的权限(可以覆盖 Virtual Folder 的权限)

User 与 Group 的绑定关系

  • 创建用户账号
  • 将用户添加到相应的 Group
  • 用户通过 Group 自动继承 Virtual Folder 权限

Admin 不负责:

服务器目录是否存在

  • 如果服务器上目录不存在,你需要联系服务器运维人员创建
  • 你只负责在 SFTPGo 后台配置,不负责服务器层面的目录创建

Linux 权限问题

  • 如果用户反映权限问题,而你的配置看起来都对,可能是 Linux 权限的问题
  • 这种情况下需要联系服务器运维人员检查

系统级维护

  • 系统初始化、服务重启等操作,需要联系 System 用户或服务器运维人员

SFTPGo 权限模型(快速回顾)

SFTPGo 的权限其实有三层,缺一层都不行:

  1. Linux 文件系统权限(服务器层面)
  2. Virtual Folder 配置(你负责)
  3. Group 权限(你负责)

任意一层不允许 = 用户无法访问

如果你在后台配置得再完美,但 Linux 权限不对,用户还是访问不了。反之,如果 Linux 权限正常,但你的配置有问题,用户也访问不了。

详细说明请参考 权限模型与核心概念


推荐工作流:新部门上线标准流程

这是最重要的部分。当你需要为一个新部门创建共享目录时,按照这个流程走,不容易出错。

标准流程(5 步法)

第 1 步:确认服务器目录已创建

做什么:

  • 联系服务器运维人员,确认服务器端目录已创建
  • 获取完整的目录路径(如:/srv/sftpgo/data/departments/tech/shared

如何确认:

  • 直接问服务器运维人员:"目录路径是什么?权限设置好了吗?"
  • 如果目录还没创建,让运维人员先创建并设置权限

这一步完成后,你应该有:

  • ✅ 完整的服务器目录路径
  • ✅ 确认目录已创建且权限正确

第 2 步:创建 Virtual Folder

做什么:

  • 登录 SFTPGo Admin UI
  • 创建一个新的 Virtual Folder

操作步骤:

  1. 进入 Virtual Folders 页面

  2. 点击"新建 Virtual Folder"

  3. 设置配置项:

    • Virtual Path:用户看到的路径(如:/tech/shared
      • 这是用户登录后在网盘中看到的路径
      • 建议使用简洁、有意义的路径
    • Mapped Path:服务器真实路径(如:/srv/sftpgo/data/departments/tech/shared
      • 这是第一步获得的服务器目录路径
      • 必须完全一致,不要写错
  4. 配置允许的操作(根据需求勾选):

    • list - 列出文件(通常必选)
    • upload - 上传文件
    • create_dirs - 创建目录
    • delete_files - 删除文件(按需)
    • delete_dirs - 删除目录(按需)
    • rename - 重命名(按需)
    • download - 下载文件(通常必选)
  5. 保存配置

重要提示:

  • ⚠️ 创建完成 ≠ 用户可见
  • Virtual Folder 创建后,用户还看不到
  • 必须绑定到 Group,用户加入 Group 后才能看到

这一步完成后,你应该有:

  • ✅ Virtual Folder 已创建
  • ✅ Virtual Path 和 Mapped Path 配置正确
  • ✅ 基本权限已设置

第 3 步:创建 Group(部门)

做什么:

  • 创建一个新的 Group,代表这个部门

操作步骤:

  1. 进入 Groups 页面

  2. 点击"新建 Group"

  3. 设置 Group 名称(如:tech-department

    • 建议使用清晰的命名,便于识别
    • 可以用部门名称或功能名称
  4. 绑定 Virtual Folder:

    • 在 Group 配置中找到 Virtual Folders 部分
    • 添加刚才创建的 Virtual Folder
    • 选择这个 Virtual Folder
  5. 配置 Group 权限(可选):

    • 可以再次限制 Virtual Folder 的操作权限
    • 例如:Virtual Folder 允许 upload,但 Group 可以设置为只读
    • 注意:Group 权限优先级高于 Virtual Folder
    • 如果不需要特殊限制,保持默认即可
  6. 保存配置

这一步完成后,你应该有:

  • ✅ Group 已创建
  • ✅ Virtual Folder 已绑定到 Group
  • ✅ Group 权限已设置(如果需要)

第 4 步:将 Virtual Folder 绑定到 Group

这一步其实在第 3 步已经完成了。但为了流程清晰,这里再强调一下:

做什么:

  • 确保 Virtual Folder 已经添加到 Group 中
  • 如果第 3 步已经完成,可以跳过

如何确认:

  • 在 Group 配置页面,查看 Virtual Folders 列表
  • 确认你创建的 Virtual Folder 在列表中

第 5 步:将用户加入 Group

做什么:

  • 将需要访问这个目录的用户添加到 Group
  • 用户加入 Group 后,会自动继承 Group 的所有 Virtual Folder 权限

操作步骤:

  1. 进入 Users 页面
  2. 找到需要配置的用户
  3. 编辑用户配置
  4. 在 Groups 部分,添加刚才创建的 Group
  5. 保存配置

批量添加用户:

  • 如果有多个用户需要加入同一个 Group
  • 可以逐个编辑用户,添加 Group
  • 或者使用批量编辑功能(如果 SFTPGo 支持)

这一步完成后,你应该有:

  • ✅ 用户已加入 Group
  • ✅ 用户现在应该能看到 Virtual Folder

验证配置

完成上述 5 步后,建议验证一下配置是否正确:

  1. 让用户重新登录 SFTPGo

    • 配置更新后,用户可能需要重新登录才能看到新目录
  2. 检查用户能否看到目录

    • 用户登录后,应该能看到 Virtual Path 对应的目录(如:/tech/shared
  3. 检查用户权限是否正确

    • 根据配置的权限,测试用户能否执行相应操作(上传、下载等)
  4. 如果有问题,查看 故障排查速查表


Virtual Folder 管理详解

Virtual Folder 的定位

Virtual Folder 说白了就是"映射",不是真正的目录。

它把服务器上的真实路径,映射成用户看到的一个虚拟路径。

举个例子:

  • 服务器真实路径:/srv/sftpgo/data/departments/tech/shared
  • 你创建 Virtual Folder,Virtual Path 设置为 /tech/shared
  • 用户登录后,看到的路径是 /tech/shared,但实际上访问的是服务器上的真实路径

Virtual Folder 不会做什么?

很多人会误以为 Virtual Folder 能自动创建目录,这是不对的:

  • ❌ Virtual Folder 不会创建目录(需要在服务器层面先创建)
  • ❌ Virtual Folder 不会修改服务器权限(这是 Linux 层面的工作)
  • ❌ Virtual Folder 不会自动让用户看到(必须绑定到 Group 或 User)

Virtual Folder 创建流程

  1. 确认服务器目录已创建

    • 联系服务器运维人员确认服务器端目录已创建
    • 确认目录路径正确
  2. 进入 Admin UI

    • 登录 SFTPGo 管理后台
  3. 新建 Virtual Folder

    • 点击创建 Virtual Folder
  4. 设置配置项

    • Virtual Path:用户看到的路径(如:/tech/shared
    • Mapped Path:服务器真实路径(如:/srv/sftpgo/data/departments/tech/shared
  5. 配置允许操作

    • list - 列出文件
    • upload - 上传文件
    • create_dirs - 创建目录
    • delete_files - 删除文件(按需)
    • delete_dirs - 删除目录(按需)
    • rename - 重命名(按需)
    • download - 下载文件
  6. 保存配置

⚠️ 创建完成 ≠ 用户可见
必须绑定到 Group 或 User 才会生效。


Group 管理详解

Group 的核心作用

Group 是 权限与共享的唯一推荐管理入口

推荐的关系结构:

Virtual Folder → Group → User

为什么不直接 Virtual Folder → User?

虽然技术上可以,但不推荐:

  • 难以批量管理:如果部门有 20 个人,你就要给 20 个用户分别配置
  • 容易出错:人工操作多了,漏掉谁、加错权限都是常见的事
  • 不好扩展:新人加入部门,还要记得给他单独配置

用 Group 的好处:

  • 一次配置,自动继承:Virtual Folder 绑定到 Group,用户加入 Group,自动获得权限
  • 批量管理:改一个 Group 的权限,所有成员都生效
  • 清晰的结构:一个 Group = 一个部门,一目了然

Group 创建流程

  1. 进入 Admin UI

    • 登录 SFTPGo 管理后台
  2. 新建 Group

    • 点击创建 Group
    • 设置 Group 名称(如:tech-department
  3. 绑定 Virtual Folder

    • 在 Group 配置中添加 Virtual Folder
    • 选择已创建的 Virtual Folder
  4. 配置 Group 权限

    • 可以再次限制 Virtual Folder 的操作权限
    • 设置只读 / 可写
    • Group 权限优先级高于 Virtual Folder
  5. 保存配置

User 与 Group 绑定

推荐方式:

  • Virtual Folder 绑定到 Group
  • User 加入 Group
  • User 自动继承 Group 的所有 Virtual Folder 权限

操作步骤:

  1. 进入用户管理

    • 选择需要配置的用户
  2. 添加到 Group

    • 在用户配置中添加 Group
    • 用户将自动继承 Group 的所有 Virtual Folder 权限
  3. 保存配置

Group 权限优先级

重要:Group 的权限优先级高于 Virtual Folder。

这是什么意思?

  • Virtual Folder 可能允许 upload(上传)
  • 但 Group 可以覆盖这个权限,设置为"只读"
  • 最终用户受到的限制,以 Group 的配置为准

这个设计很合理:Virtual Folder 定义"这个目录能做什么",Group 决定"这个部门在这个目录能做什么"。


User 可见目录规则

用户登录后可看到:

  • 自己的 home_dir(用户个人目录)
  • 所属 Group 绑定的 Virtual Folder(部门共享目录)
  • Linux 实际允许访问的路径

用户只能看到:

  1. 自己个人目录
  2. 自己所属 Group 绑定的 Virtual Folder
  3. Linux 层面允许访问的路径

如果用户看不到某个目录,检查:

  • 用户是否加入了相应的 Group?
  • Virtual Folder 是否绑定到了这个 Group?
  • Linux 权限是否正常?

常见问题快速排查

情况 1:用户能看到目录但无法上传

检查顺序:

  1. 服务器目录是否可写

    • 联系服务器运维人员检查 Linux 文件系统权限
    • 确认 SFTPGo 运行用户对目录有写权限
    • 如果这里有问题,后面都不用看了,先解决这个
  2. Virtual Folder 是否允许 upload

    • 检查 Virtual Folder 的权限配置
    • 确认 upload 权限已勾选
  3. Group 是否限制了写权限

    • 检查 Group 配置中是否覆盖了 Virtual Folder 的权限
    • Group 权限优先级更高,如果 Group 设置为只读,即使 Virtual Folder 允许上传也不行

更多排查信息请参考 故障排查速查表

情况 2:Virtual Folder 创建成功但用户看不到

检查顺序:

  1. 是否已绑定 Group

    • 确认 Virtual Folder 已添加到 Group 中
  2. 用户是否加入该 Group

    • 检查用户配置中是否包含该 Group
  3. Virtual Path 是否填写正确

    • 确认 Virtual Path 配置无误
  4. 让用户重新登录

    • 配置更新后,可能需要重新登录才能看到新目录

更多排查信息请参考 故障排查速查表


操作检查清单

完成配置后,可以用这个清单检查:

  • 服务器目录是否已创建?(已联系运维确认)
  • Virtual Folder 是否已创建?
  • Virtual Path 和 Mapped Path 是否配置正确?
  • Virtual Folder 的权限是否设置正确?
  • Group 是否已创建?
  • Virtual Folder 是否已绑定到 Group?
  • Group 权限是否设置正确(如果需要)?
  • 用户是否已加入 Group?
  • 用户是否能正常访问目录?(已测试)

常见错误(避免这些错误)

  • ❌ Virtual Folder 直接绑定到 User,不使用 Group
  • ❌ 忽略服务器目录是否存在,直接创建 Virtual Folder
  • ❌ 只配置 SFTPGo 权限,忽略 Linux 文件系统权限
  • ❌ Group 权限配置过于宽松,导致安全风险
  • ❌ 忘记将 Virtual Folder 绑定到 Group
  • ❌ 未定期检查用户 Group 归属关系
  • ❌ 在 Virtual Folder 创建前就配置 Group 和 User
  • ❌ 不按照推荐流程操作,随意配置

风险提示

⚠️ 管理员操作影响系统安全和用户访问,请谨慎配置用户权限。
⚠️ 权限配置必须同时考虑 Linux 文件系统权限和 SFTPGo 内部权限,缺一不可。
⚠️ Group 权限优先级高于 Virtual Folder,配置时需注意。
⚠️ 修改权限配置后,建议测试验证用户实际访问情况。


相关文档