1:安装vsftpd及附属软件包
yum install -y vsftpd pam* libdb-utils libdb*
2:启动服务并设置开机自动启动
启动vsftpd服务
systemctl start vsftpd
设置vsftpd开机自动启动
systemctl enable vsftpd
3:防火墙开放21端口
firewall-cmd --permanent --zone=public --add-port=21/tcp
firewall-cmd --permanent --zone=public --add-service=ftp
重新启动防火墙服务
firewall-cmd --reload
查看防火墙配置
firewall-cmd --list-all
4:创建虚拟用户临时文件
vi /etc/vsftpd/ftpusers.txt
添加以下内容
tql
pas369
lxy
zb2598
zidb
pq6527
*注 奇数行为用户名 偶数行为密码
5:生成虚拟用户数据认证文件
db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/login.db
6:改认证文件权限为755
chmod 755 /etc/vsftpd/login.db
7:配置pam认证文件
vi /etc/pam.d/vsftpd
注释文件内全部行,添加下面内容(添加内容不注释)
auth required pam_userdb.so db=/etc/vsftpd/login
account required pam_userdb.so db=/etc/vsftpd/login
8:新建一个系统用户(ftpuser)作为虚拟用户的映射,用户不用密码即可登录
useradd ftpuser -s /sbin/nologin
9:创建虚用户配置文件放置的目录
mkdir -p /etc/vsftpd/user_conf
10:配置vsftpd文件
vi /etc/vsftpd/vsftpd.conf
将文件里“anonymous_enable=YES”改为
anonymous_enable=NO
将“xferlog_file=/var/log/xferlog”前面的"#"删除
将“listen=NO”改为
listen=YES
将“listen_ipv6=YES”改为
listen_ipv6=NO
末尾追加
guest_enable=YES
guest_username=ftpuser
user_config_dir=/etc/vsftpd/user_conf
virtual_use_local_privs=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_wirteable_chroot=YES
11:建立根目录锁定帐号文件
touch /etc/vsftpd/chroot_list
12:为每个用户创建配置文件
tql用户
vim /etc/vsftpd/user_conf/tql
添加以下内容
local_root=/home/ftpuser/tql
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
lxy用户
vim /etc/vsftpd/user_conf/lxy
添加以下内容
local_root=/home/ftpuser/lxy
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
zidb用户
vim /etc/vsftpd/user_conf/zidb
添加以下内容
local_root=/home/ftpuser/zidb
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
13:创建虚拟用户各主目录
mkdir /home/ftpuser/tql -p
mkdir /home/ftpuser/lxy -p
mkdir /home/ftpuser/zidb -p
14:虚拟用户主目录权限配置
chown -R ftpuser:ftpuser /home/ftpuser