一、vsftp安装篇 # 安装vsftpdyum -y install vsftpd# 启动service vsftpd start# 开启启动chkconfig vsftpd on# 如果启动失败那么查看端口占用情况netstat -natp |grep 21 #显示的是被pure-ftp占用,那么我们先停掉这个service pureftpd stopservice vsftpd start二、vsftp相关命令之服务篇 # 启动ftp服务service vsftpd start# 查看ftp服务状态service vsftpd status # 重启ftp服务service vsftpd restart# 关闭ftp服务service vsftpd stop三、vsftp配置篇 #进入vsftpd配置文件vim /etc/vsftpd/vsftpd.conf # 禁止匿名用户anonymous登录anonymous_enable=NO# 允许本地用户登录local_enable=YES# 让登录的用户有写权限(上传,删除)write_enable=YES# 默认umasklocal_umask=022# 把传输记录的日志保存到/var/log/vsftpd.logxferlog_enable=YESxferlog_file=/var/log/vsftpd.logxferlog_std_format=NO# 允许ASCII模式上传ascii_upload_enable=YES # 允许ASCII模式下载ascii_download_enable=YES# 使用20号端口传输数据connect_from_port_20=YES# 欢迎标语ftpd_banner=Welcome to use my test ftp server.# 接下来的三条配置很重要# chroot_local_user设置了YES,那么所有的用户默认将被chroot,# 也就用户目录被限制在了自己的home下,无法向上改变目录。# chroot_list_enable设置了YES,即让chroot用户列表有效。# ★超重要:如果chroot_local_user设置了YES,那么chroot_list_file# 设置的文件里,是不被chroot的用户(可以向上改变目录)# ★超重要:如果chroot_local_user设置了NO,那么chroot_list_file# 设置的文件里,是被chroot的用户(无法向上改变目录)chroot_list_enable=YES# touch /etc/vsftpd/chroot_list 新建chroot_list_file=/etc/vsftpd/chroot_listuse_localtime=YES# 以standalone模式在ipv4上运行listen=YES# PAM认证服务名,这里默认是vsftpd,在安装vsftpd的时候已经创建了这个pam文件,# 在/etc/pam.d/vsftpd,根据这个pam文件里的设置,/etc/vsftpd/ftpusers# 文件里的用户将禁止登录ftp服务器,比如root这样敏感的用户,所以你要禁止别的用户# 登录的时候,也可以把该用户追加到/etc/vsftpd/ftpusers里。pam_service_name=vsftpd# 重启 vsftpdservice vsftpd restart四、vsftp用户篇 # 创建用户useradd -d /opt/www -s /sbin/nologin -M aidejin# 设置用户到文件夹chown -R aidejin /opt/www# 设置权限chown -R 777 /opt/www# 添加密码passwd aidejin -> 密码 -> 确认密码五、FTP连接不上,提示读取目录失败 该错误是由iptables的配置引起的,临时的解决方法是执行如下命令:modprobe ip_nat_ftp但当你重新启动服务器则iptables规则失效,又会出现相同的情况,所以我们需要修改/etc/sysconfig/iptables-config文件vi /etc/sysconfig/iptables-configIPTABLES_MODULES="ip_nat_ftp"IPTABLES_MODULES_UNLOAD="yes"六、VSFTPD不能上传文件 查看配置sestatus -b|grep ftp命令行设定setsebool -P ftp_home_dir onsetsebool -P allow_ftpd_anon_write onsetsebool -P allow_ftpd_full_access onsetsebool -P allow_ftpd_use_cifs onsetsebool -P allow_ftpd_use_nfs onservice vsftpd restart