Contents
  1. 1. install
  2. 2. config
    1. 2.1. virtual users

install

sudo apt install vsftpd
sudo apt install db5.3-util

config

virtual users

1.添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。
vi ~/vftpuser.txt

1
2
3
4
ftp1
123456
ftp2
1234567

2.使用db_load命令生成虚拟用户口令认证文件
db5.3_load -T -t hash -f ~/vftpuser.txt vftpuser.db

3.编辑vsftpd的PAM认证文件
/etc/pam.d/vsftpd
注释掉原有的规则
auth required pam_userdb.so db=/home/admin/vftpuser
account required pam_userdb.so db=/home/admin/vftpuser

4.建立本地映射用户并设置宿主目录权限
useradd -d /home/vftpuser -s /sbin/nologin vftpuser
sudo mkdir -p /home/vftpuser/data
sudo chmod 755 /home/vftpuser #调整权限以允许浏览目录,目录归属于root
sudo chmod 555 /home/vftpuser/data #chroot_local_user为真时要求虚拟根目录不能写权限

5.设置虚拟用户配置项
vi /etc/vsftpd.conf

1
2
3
4
5
6
7
8
9
#以下这些是关于Vsftpd虚拟用户支持的重要配置项目。默认Vsftpd.conf中不包含这些设定项目,需要自己手动添加配置
guest_enable=YES
#设定启用虚拟用户功能。
guest_username=vftpuser
#指定虚拟用户的宿主用户。
user_config_dir=/home/vftpuser/vconf
#设定虚拟用户个人Vsftp的配置文件存放路径。这个被指定的目录里将存放每个Vsftp虚拟用户个性的配置文件,这些配置文件名必须和虚拟用户名相同。
chroot_local_user=YES
# 限制用户离开指定的根目录

6.设置虚拟用户个性配置
vi /home/vftpuser/vconf/ftp1

1
2
3
4
anon_upload_enable=YES
anon_mkdir_write_enable=YES
virtual_use_local_privs=YES
local_root=/home/vftpuser/data

touch /home/vftpuser/vconf/ftp2 #空文件,用户只读

https://www.cnblogs.com/ssrs-wanghao/articles/13751408.html

7.重启服务
service vsftpd restart

8.连接
ftp ftp1@192.168.137.111