参考文章:
http://www.cnblogs.com/taoweiji/p/3821924.html
http://www.cnblogs.com/CSGrandeur/p/3754126.html
http://www.linuxidc.com/Linux/2013-09/90560.htm
http://blog.csdn.net/bluishglc/article/details/42399439
http://www.2cto.com/os/201403/282679.html
vsftp安装流程:
第一步:安装vsftpd
sudo apt-get install vsftpd
第二步:配置
sudo vi /etc/vsftpd.conf
关闭匿名访问
anonymous_enable=NO
允许本地账号访问
local_enable=YES
允许上传
write_enable=YES
第三步:如果需要让root可以访问,则要执行第三步
sudo vi /etc/ftpusers
把root去掉
第四步:增加一个访问账号
增加用户ftpuser并设置其目录为/ftp/ftpuser(可以修改,但是必须创建该文件夹)
sudo mkdir /ftp
sudo mkdir /ftp/ftpuser
sudo chmod 777 /ftp/ftpuser
sudo useradd -d /ftp/ftpuser -M ftpuser
sudo passwd ftpuser
第五步:重启vsftpd
sudo restart vsftpd
关于目录访问限制:
如果设置为
chroot_local_user=YES
chroot_list_enable=YES(这行可以没有, 也可以有)
chroot_list_file=/etc/vsftpd.chroot_list
那么, 凡是加在文件vsftpd.chroot_list中的用户都是不受限止的用户,即可以浏览其主目录的上级目录。所以, 如果不希望某用户能够浏览其主目录上级目录中的内容,可以如上设置, 然后在文件vsftpd.chroot_list中不添加该用户即可(此时, 在该文件中的用户都是可以浏览其主目录之外的目录的).
如果设置为
chroot_local_user=NO
chroot_list_enable=YES(这行必须要有, 否则文件vsftpd.chroot_list不会起作用)
chroot_list_file=/etc/vsftpd.chroot_list
然后把所有不希望有这种浏览其主目录之上的各目录权限的用户添加到文件vsftpd.chroot_list(此时, 在该文件中的用户都是不可以浏览其主目录之外的目录的)中即可(一行一个用户名).
关于500 OOPS错误:
从2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。要修复这个错误,可以用命令chmod a-w /home/user去除用户主目录的写权限,注意把目录替换成你自己的。或者你可以在vsftpd的配置文件中增加以下配置:
allow_writeable_chroot=YES
关于被动模式:
添加以下配置即可启用被动模式:
pasv_enable=YES
pasv_max_port=30010
pasv_min_port=30000
注意需要开放对应端口的防火墙