Ubuntu 14.04 配置vsftpd实现FTP服务器(3)

执行sudo vim /etc/vsftpd.conf可以看到以下3行被注释:

#chroot_local_user=YES #chroot_list_enable=YES #chroot_list_file=/etc/vsftpd.chroot_list

解了这3行的注释,我们看到有指定一个用户列表“vsftpd.chroot_list”,但是这个文件初始是不存在的,我们需要自己建立。

如果是两个YES(就上面那样),那么是指,限制所有用户,开放(列表中)特定,限制一切用户,只解禁 /etc/vsftpd.chroot_list 的用户,也即是只有这个列表中的用户可以访问所有文件,不在列表的只能访问指定目录。

如果是一个NO和一个YES,那就是开放所有,限制特定,可指定一组用户限制,即列表中的用户受限。

sudo vim /etc/vsftpd.chroot_list

一行一个用户名,进行添加,然后保存退出,比如添加了我们刚才的ftptest用户,并且设置两个YES。

这时候你再去连接ftp时,你会发现你居然能访问所有目录了,为了验证有效性,你可以断开连接,再去设置chroot_local_user为NO时,你会发现,你又只能访问ftp目录了。

这就是chroot的作用。

附. 通过FTP连接AWS EC2

因为我用的测试服务器是AWS EC2,所有这里也提一下当服务器端通过终端配置好vsftpd后如何连接AWS。

打开AWS的EC2控制台:

Ubuntu 14.04 配置vsftpd实现FTP服务器

添加自定义规则,1024-1048端口这里的配置要和vsftpd.conf文件的被动模式配置端口一致,然后还要打开20-21端口,否则就没法进行ftp连接了。

Ubuntu 14.04 配置vsftpd实现FTP服务器

配置好后就可以进行ftp连接了,如果是SFTP,则需要添加ssh密钥。

vsftpd详细说明参见这里

玩转vsftpd服务器的四大高级配置:

vsFTPd配置教程:

Ubuntu实用简单的FTP架设

Ubuntu 上架设FTP服务器和Apache服务器

Ubuntu 13.04 安装 LAMP\vsftpd\Webmin\phpMyAdmin 服务及设置

RHEL6平台下SeLinux和vsftpd的匿名上传的简单案例

Linux系统vsftpd源码安装

openSUSE 13.2/13.1 下安装配置 FTP服务器 vsftpd 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/b893399317419d41f7a86b569d6ca9e4.html