前记:自己做了个虚拟机,想用ftp连接,然后又不想让ftp访问到其他的目录。

前提:

系统为Ubuntu 16.04 服务器版,已安装vsftpd(安装方法:sudo apt-get install vsftpd),ftp连接程序-FileZilla。

开始:

添加用户:

# useradd -d /home/test -g test -s /sbin/nologin test

修改用户默认目录。(我的用户为test)

两种方法:

1.usermod -d /home/test test

2.vim /etc/passwd 修改默认目录

限制访问其他目录:

# vim /etc/vsftpd.conf (也有其他版本说在/etc/vsftpd/vsftpd.conf,未验证)

修改:

chroot_list_enable=YES

# (default follows)

chroot_list_file=/etc/vsftpd.chroot_list #(与conf文件在同一目录下)

allow_writeable_chroot=YES #这句可解决"500 OOPS: vsftpd: refusing to run with writable root inside chroot()" 问题

然后:

vim /etc/vsftpd.chroot_list

添加想要限制的用户名,我的用户为test。

test

一个用户一行

然后重启服务

# service vsftpd restart

补充:如果ftp连接上,但是不能显示正确目录,可能是权限问题,给test用户添加目录的读写权限就行了

OK   :)

PS: 这三条控制ftp可写文件

5aba2f3b21e07030fc3ab037d6761ad9.png

更多Vsftpd相关教程见以下内容:

0b1331709591d260c1c78e86d0c51c18.png

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐