2011-11-06 71 views
1

我有一个运行Ubuntu 11.10的网络服务器 我只是存储了我的项目源的副本,但现在我想让用户通过SSH访问系统。我想创建这样的虚拟机,以保护我的来源不受该用户的影响。Ubuntu的 - SSH/FTP用户的chroot虚拟系统

我想使用virtualbox,但它不是最好的解决方案(因为需要大量内存),所以我想也许我可以使用chroot来做到这一点。

我该怎么办? 假设我创建了一个名为“test1”(/ home/test1)的系统用户,我如何防止他在其主目录之外浏览? 我将允许test1通过ssh和ftp(vsftpd)访问。

谢谢。

回答

0

备份你的vsftpd.conf文件

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak 

开放的vsftpd.conf

sudo vi /etc/vsftpd.conf 

假设你没有修改默认的文件更改这些设置:

保持chroot_local_user = YES 评论(这将是在两个地方)

取消注释chroot_list_enable = YES

,并取消chroot_list_file =的/ etc/vsftpd.chroot_list

现在在/ etc下创建文件vsftpd.chroot_list:

sudo touch vstftp.chroot_list 

编辑此文件添加您的用户“test1”(假设您的用户已经存在:这意味着您应该能够遍历到/ home/test1目录)。添加每个用户在一行

test1的

test2的

....

重启vsftpd的:

sudo service vsftpd restart 

虽然你可能已经解决了这个问题,我试图寻找为此,但不能谷歌它...我不小心弄明白了...因此发布它