FTP Jailing 是什么意思,服务器操作系统需要哪些功能才能启用它?

FTP Jailing 是什么意思,服务器操作系统需要哪些功能才能启用它?

我对“ftp jailing”一词的含义不太清楚,但当涉及到权限和安全时,模糊概念是不明智的。它是什么?它是如何实现的?它主要是 ftp 服务器的功能,还是源自底层操作系统的权限管理方式?

答案1

ftp 中的“Jailing”表示将 ftp 会话锁定到文件系统的特定子集。通常设置为,如果特定用户登录,他们只能通过 ftp 访问自己的目录空间。

ftp 服务器通常会有一个选项,当用户连接时,会 chroot 该用户,这意味着就该用户而言,宇宙的根是整个可用文件系统的某个特定部分。

'vsftp' 有一个非常清晰的解释和操作方法vsftpd

其他一些例子包括普罗夫特hp/ux 上的 ftp

答案2

以下是我在 Windows IIS 环境中的操作方法。相信将来它一定会对某些人有所帮助。

  1. 为每个“用户/客户端”在计算机上设置本地用户帐户
  2. 在资源管理器中设置 NTFS 结构,以便您有一个“根”文件夹,并且该文件夹内有每个客户端/等的文件夹。
  3. 设置 NTFS 权限,以便每个用户(您可以使用名为 FTP 用户的组,并将他们全部添加到该组)对根文件夹具有“列表”权限。然后授予他们对每个“主”文件夹的特定权限(读/写/等等)。
  4. 在 FTP 站点的 IIS 中,创建与您创建的用户帐户名称完全相同的虚拟目录,并将每个目录指向正确的主文件夹。例如,BOBJONES 的虚拟目录指向 d:\ftpsite\BOBJONES
  5. 返回资源管理器并在与 ROOT 文件夹相同的文件夹中创建一个新文件夹,并将其命名为 DEADEND
  6. 授予 FTP 用户对 DEADEND 文件夹的列表/读取权限
  7. 返回 IIS,将 FTP 站点的“根文件夹”设置为 DEADEND 文件夹

就是这样。

现在,当 BOBJONES 登录 FTP 站点时,他就在 BOBJONES 目录中。如果他变得狡猾并试图执行 cd .. 以转到父级/根目录,他将被打入 DEADEND 文件夹,并且看不到其他人的主文件夹列表等。(注意:他仍然可以通过键入 cd BOBJONES 返回到他的主文件夹)

最后说明一下:任何拥有用户 ID 但没有同名虚拟目录的人都将默认进入已更改为 DEADEND 的根目录。

答案3

FTP jailing 意味着登录用户将他的根目录视为您定义的目录。他无法再向上移动,因为 FTP 客户端将其目录视为根目录。

假设您有以下内容:

/home/ben_linus/
/home/ben_linus/data
/home/ben_linus/progs

您将根目录设置为 /home/ben_linus/

他会看到

/
/data
/progs

答案4

这是 ftp 服务器的一个功能(对于大多数服务器来说),例如使用 vsftpd,你可以使用配置将用户“监禁”到他们的主目录中

chroot_local_user=YES

ftp 服务器不会允许用户进入该目录。

User homedir: /home/ftp
User can access: /home/ftp, /home/ftp/pub
User can not access: /home, /etc, /, /root etc..

相关内容