我按照此处的说明设置了一个 chrooted sftp 文件夹:http://www.thegeekstuff.com/2012/03/chroot-sftp-setup/
它运行良好,我唯一的问题是,它似乎存在一个明显的漏洞,如果上传内容的用户被黑客入侵,则可能导致服务器上的信息受到损害。
具体来说,sftp 允许您创建符号链接,因此例如如果 drop 文件夹被泄露,他们所要做的就是使用 sftp 登录然后:
sftp> symlink /etc/passwd web/user-list
假设该web
文件夹是网站的网络根目录,那么将http://example.com/user-list
显示 /etc/passwd 的内容。
这允许对系统中任何位置的任何文件进行读取访问,Web 服务器用户可以对其进行读取访问 - 他们所要做的就是创建指向它的符号链接。
因此,他们可以使用以下方法来获取我们的证书,以欺骗我们的服务器:
sftp> symlink /etc/httpd/certs/example.key private-key
sftp> symlink /etc/httpd/certs/example.crt public-cert
所以我想我的问题是:有什么办法可以阻止这种情况吗?