保护安全的SFTP服务器的文件系统

这可能不是一个发展问题,但实质上是这样。 让我解释一下。 我们主要的发展重点是dynamic内容页面。 我们的一些客户要求我们在我们的服务器(他们支付的)中为他们的旧静态内容提供空间。 我们使用通过给客户一个ftp帐户到不同的域来实现这一点。 (例如,客户域是customer.com,但他们通过otherdomain.com/customerstatic访问其静态内容)。

现在我们想要增加客户在他们的linux服务器上的sftp账户的安全性。 我在他们的shell环境中使用openssh / sftp-server,所以他们无法login或执行命令。

问题是从本质上来说,许多文件系统文件是默认的(drwxr-xr-x),这意味着任何用户将能够读取目录的内容以及可能的一些文件。 我不认为将整个文件系统更改为-rwxr-x-x是一个明智之举,因为我不知道有多less系统文件需要该读取权限。

过去有人遇到这个问题。 如果你有,你可以开导一下吗?

谢谢

SFTP本质上不是不安全的; 让他们进入你的整个文件系统。 看看如何在chroot的基础上启用SFTP访问,这将locking他们可以访问的目录,比如他们的主目录,或者任何你想要他们上传的地方。

在Linux上,我会注意这个部分(configuration/ etc / ssh / sshd_config):

Match Group sftponly ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no 

这意味着任何人在'sftponly'用户组将被限制在他们的主目录。

请参阅更多链接,并阅读sshd_config联机帮助页。 希望有所帮助。

这可能是有趣的 – http://sublimation.org/scponly/wiki/index.php/Main_Page

允许你限制一些用户只有scp – 也可以selectchroot他们。

当你说“许多文件系统默认755权限”时,这实际上意味着默认的umask被设置为022.你可以通过设置umask为027来改变这个默认值(对于新文件),这将使默认权限为750,或者设置umask为007,这将使默认权限770。

您可以考虑设置一个OpenVZ服务器,然后为每个公司创build一个单独的小型虚拟机ftp / sftp“容器”。 这使得它们全部分开,一旦你得到了OpenVZ的窍门,它真的很适合这些小东西。