Centos7下安装vsftp并配置虚拟用户
一、安装前准备 1.关闭防火墙或者运行ftp服务 # 关闭防火墙 systemctl stop firewalld systemctl disable firewalld # 允许ftp服务 firewall-cmd --permanent --zone=public --add-service=ftp firewall-cmd --reload 2.关闭sellinux # 立即关闭 setenforce 0 # 永久关闭 sed -i 's@SELINUX=enforcing@SELINUX=disabled@' /etc/selinux/config # 查看是否关闭 getenforce 二、安装vsftpd 1.安装 yum install -y vsftpd 2.启动和自启 systemctl start vsftpd systemctl enable vsftpd 三、配置vsftpd 1.创建vsftpd使用的系统用户,主目录为/data/vsftpd,禁止ssh登录。创建之后所有虚拟用户使用这个系统用户访问文件。 useradd vsftpd -d /data/vsftpd -s /bin/false 2.创建虚拟用户主目录,比如虚拟用户叫ftp1,执行下面的命令。 mkdir -p /data/vsftpd/ftp1/ chown -R vsftpd:vsftpd /data/vsftpd/ftp1 3.创建这个虚拟用户 vi /etc/vsftpd/loginusers.conf # 增加内容 ftp1 123456 4.根据这个文件创建数据库文件 db_load -T -t hash -f /etc/vsftpd/loginusers.conf /etc/vsftpd/loginusers.db chmod 600 /etc/vsftpd/loginusers.db 5.启用这个数据库文件 vi /etc/pam.d/vsftpd # 注释掉所有内容后,增加下面的内容 auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/loginusers account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/loginusers 6.创建虚拟用户配置目录和文件 # 创建用户配置目录 mkdir /etc/vsftpd/userconf # 创建虚拟用户配置文件 vim /etc/vsftpd/userconf/ftp1 # 增加下面的内容 local_root=/data/vsftpd/ftp1/ write_enable=YES 7.最后修改主配置文件 # 打开配置 vim /etc/vsftpd/vsftpd.conf # 更改内容 anonymous_enable=NO chroot_local_user=YES ascii_upload_enable=YES ascii_download_enable=YES # 文件尾部添加以下内容 guest_enable=YES guest_username=vsftpd user_config_dir=/etc/vsftpd/userconf allow_writeable_chroot=YES # 浏览FTP目录和下载 anon_world_readable_only=NO # 允许上传 anon_upload_enable=YES # 允许建立和删除目录 anon_mkdir_write_enable=YES # 允许改名和删除文件 anon_other_write_enable=YES 8.重启服务 service vsftpd restart 9.出现vsftpd 425 Security: Bad IP connecting.解决方法 vim /etc/vsftpd/vsftpd.conf # 添加: pasv_promiscuous=YES # 重启 service vsftpd restart