这似乎不是一个发展问题,但实质上是。让我解释一下。我们的主要开发重点是动态内容页面。我们的一些客户要求我们允许他们在我们的服务器(他们付费)中为他们的旧静态内容提供空间。我们通过给客户一个到不同域的 ftp 帐户来实现这一点。(例如,客户域是 customer.com,但他们通过 otherdomain.com/customerstatic 访问其静态内容)。
现在我们想提高安全性,为客户在他们的 linux 服务器中提供 sftp 帐户。我在他们的 shell 环境中使用 openssh/sftp-server,所以他们无法登录或执行命令。
问题是许多文件系统文件在本质上是默认的(drwxr-xr-x),这意味着任何用户都可以读取目录的内容,可能还有一些文件。我不认为将整个文件系统更改为 -rwxr-x--x 是明智之举,因为我不知道有多少系统文件需要该读取权限。
过去有人遇到过这个问题。如果你有,你能开导道吗?
谢谢
SFTP 本质上不是不安全的。让它们进入你的整个文件系统。查看此内容以了解如何在chroot基础上启用 SFTP 访问,这将锁定他们可以访问的目录,例如他们的主目录或您希望他们上传的任何位置。
在 Linux 上,我会注意这部分(配置 /etc/ssh/sshd_config):
这意味着“sftponly”用户组中的任何人都将被限制在他们的主目录中。
有关更多信息,请参阅链接,并阅读 sshd_config 手册页。希望有帮助。
这可能很有趣 - http://sublimation.org/scponly/wiki/index.php/Main_Page
允许您将某些用户限制为仅 scp - 并且还可以选择对他们进行 chroot。
当您说“许多文件系统默认具有 755 权限”时,这实际上意味着默认umask设置为 022。您可以通过将 umask 设置为 027 来更改此默认值(对于新文件),这将使默认权限为 750,或者将 umask 设置为 007,这将使默认权限为 770。
您可能会考虑设置一个 OpenVZ 服务器,然后为每个公司创建一个单独的小型 VM ftp/sftp“容器”。这使它们全部分开,一旦你掌握了 OpenVZ 的窍门,它就非常适合这些小事情。