通过 IIS6 限制 FTP 目录

通过 IIS6 限制 FTP 目录

我们正在尝试在独立专用 Windows Server 2003(标准版,32 位,SP2)IIS6 上设置 FTP。我们不使用 AD。

它不是为用户隔离而设置的,因为我需要“管理员”帐户才能访问 D: 驱动器的任何部分(FTP 已将其设置为其根目录)。

我希望能够限制单个用户帐户(在本地计算机上创建)只能访问驱动器上的特定子目录结构。我不想允许此用户读取/写入/导航到 D: 驱动器的任何其他部分。如有必要,我可以接受目录列表,但肯定仅此而已。

在 IIS6 中,我使用用户名(如上文提到的用户)作为别名创建了一个虚拟目录 - 使用凭据登录 FTP 会直接进入目录,这是正确的,也是我想要的。但我找不到任何方法阻止他们在“他们的”结构之外导航。

我曾尝试拒绝他们在 D:驱动器根目录下的权限,但当然,拒绝会覆盖任何允许他们在“他们的”目录中获得权限的尝试。

我也尝试创建一个组,以便如果需要的话,我可以将其他用户添加到该组中,并且他们也将被拒绝访问不属于他们的目录结构的任何内容。

您可能已经知道,我并不是一名专业的网络管理员,所以请您温柔一点!

答案1

您可以通过驱动器上的 NTFS 权限来执行此操作。这要求驱动器使用 NTFS 文件系统进行格式化,并且您将所有文件夹的安全设置设置为适当的设置。

不过,您应该认真重新考虑这种设计,因为使用管理员帐户以 root 权限登录驱动器的 FTP 是一种不安全的做法。希望您至少安装了 SSL 证书并使用 ftp 而不是未加密的 ftp。

答案2

感谢 Bad Dos,他大致为我指明了正确的方向,我也找到了一种适合我们的权限设置方法。正如他所说,我们当前的 FTP 设置并不理想,我们将在不久的将来考虑进行更改。

与此同时,我做了以下几件事:

  • 创建一个组(名为“AllFtpUsers”)并将新用户(如上所述)分配到其中。
  • 从 D: 驱动器的根目录中删除了“用户”组和“经过身份验证的用户”组
  • 将“AllFtpUsers”组添加到 D:驱动器的根目录,只允许“列出文件夹内容”。
  • D: 驱动器根目录中的所有目录都已将“AllFtpUsers”组设置为拒绝“列出文件夹内容”(这意味着他们可以查看但不能更改根目录中的文件,也不能导航到任何子目录)
  • 将“子子目录”(IIS 已将虚拟目录设置为)的权限设置为“修改”控制

这意味着我们仍然可以通过正常登录进行完全控制,但新用户只能更改其子目录(尽管也能够查看根目录中的所有文件)。

从根目录中删除“用户”和“经过身份验证的用户”组的原因是,新用户一旦登录,就会被授予这些组的所有权限 - 让我们可以通过“管理员”组正常访问文件/目录。

相关内容