我有一个运行Ubuntu 10.04的VPS,我想给一个人SFTP访问一个目录,但阻止他们看到系统上的其他任何东西。 什么是最好的方法来拉断呢?
我认为从系统上的所有东西中删除“所有人”的权限,但是对于这个问题,这似乎是一个非常钝的工具(而且会导致其他问题) – 我希望这里有一个更好的select。
编辑 :我欣赏的答案! (我通过他们学习了一堆阅读/研究)。 我最终发现并使用了Linode的这个指南,因为它拼写了所有步骤: http : //library.linode.com/security/sftp-jails/
最好的方法是使用ftps和chroot(vsftpd)或者使用ssl(Apache2,nginx)的web-dav。
生成证书:
openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem
编辑configuration:
ssl_enable=YES rsa_cert_file=/etc/vsftpd/vsftpd.pem chroot_local_user=YES
如果你想要SSH的子系统的SFTP 在这里查看这个指南
如果你想用SSL层的FTP比ooshrobuild议是好的。
有了Ubuntu,你可以很容易地使用scponly
sudo apt-get install scponly sudo dpkg-reconfigure -plow scponly
一旦安装和configuration完毕,您可以使用提供的脚本来创build用户帐户和监狱。
cd /usr/share/doc/scponly/setup_chroot sudo gunzip setup_chroot.sh.gz sudo chmod +x setup_chroot.sh sudo ./setup_chroot.sh
按照屏幕上的提示来configuration用户。