1.安装vsftp
以及数据库
apt install -y vsftp
apt install -y db-util
2. 增加虚拟用户&数据目录& 开放防火墙端口
useradd -d /data/virftpuser/ -s /bin/bash virftpuser
mkdir -p /data/virftp/DPA_ABC/U001
mkdir -p /data/virftp/DPA_ABC/U002
mkdir -p /data/virftp/DPA_ABC/U003
chown virftpuser:virftpuser/data/virftp/DPA_ABC
sudo firewall-cmd --zone=public --add-port=21/tcp --permanent
sudo firewall-cmd --zone=public --add-port=40000-45000/tcp --permanent
sudo firewall-cmd --reload
3. 配置文件vsftpd.conf
sudo cp /etc/vsftpd.conf{,.bak}
sudo vim /etc/vsftpd.conf
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virftpuser
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vsftpd_viruser
allow_writeable_chroot=YES
pasv_min_port=40000
pasv_max_port=45000
listen=YES
utf8_filesystem=YES
4. 配置用户参数
vim /etc/vsftpd/vir_user
U001
111111
U002
111111
U003
111111
mkdir -p /etc/vsftpd/vsftpd_viruser/
vim /etc/vsftpd/vsftpd_viruser/U001
local_root=/data/virftp/DPA_ABC/U001
anon_umask=022
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
download_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
5. 配置pam
验证文件
sudo cp /etc/pam.d/vsftpd{,.bak}
sudo vim /etc/pam.d/vsftpd
auth required pam_userdb.so db=/etc/vsftpd/vir_user
account required pam_userdb.so db=/etc/vsftpd/vir_user
6. 生成虚拟数据库
sudo db_load -T -t hash -f /etc/vsftpd/vir_user /etc/vsftpd/vir_user.db
sudo chmod 700 /etc/vsftpd/vir_user.db
7.完成配置重启服务
systemctl restart vsftpd
8. 新增虚拟用户
sudo db_load -T -t hash -f /etc/vsftpd/vir_user /etc/vsftpd/vir_user.db
sudo systemctl restart vsftpd
访问测试
ftp://C600:1111110@ip
chown virftpuser:virftpuser /data/virftp/DPA_ABC/U001