安装vsftpd包
yum install -y vsftpd db4-utils
建立账号
useradd virftp -s /sbin/nologin
建立与账户相关的文件
vim /etc/vsftpd/vsftpd_login奇数行为用户名,偶数行为上一行的用户密码
wyq
123456
qyw
654321
更改文件的权限提升安全级别
chmod 600 /etc/vsftpd/vsftpd_login
vsftpd使用的密码不是明文的,需要生成对应的库文件
db_load -T -t hash -f/etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
建立与虚拟账号相关的目录以及配置文件
mkdir /etc/vsftpd/vsftpd_user_conf
cd /etc/vsftpd/vsftpd_user_conf/
用户的配置文件是单独存在的,每个用户都有一个自己的配置文件,文件名和用户名一致
vim wyq
local_root=/home/virftp/wyq
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
mkdir /home/virftp/wyq
touch /home/virftp/wyq/qiulinux.txt
chown -R virftp:virftp /home/virftp
vim /etc/pam.d/vsftpd
在最上方添加
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
因为是64位所以是/lib64/security/pam_userdb.so
32位系统库文件路径为/lib/security/pam_userdb.so
修改全局配置文件
编辑vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES改为 anonymous_enable=NO
anon_upload_enable=YES改为anon_upload_enable=NO
anon_mkdir_write_enable=YES改为anon_mkdir_write_enable=NO
添加下列几行
chroot_local_user=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES
保存后启动vsftpd服务
systemctl start vsftpd
ps aux|grep vsftp查看是否启动
测试
安装lftp客户端
yum install -y lftp
lftp wyq@127.0.0.1
输入密码连接