在Ubuntu上设置VSFTPD虚拟用户需要执行以下步骤:
sudo apt-get update
sudo apt-get install vsftpd
sudo groupadd ftpusers
sudo adduser --system --group --no-create-home --disabled-login --gecos "" ftpuser
sudo mkdir /home/virtual
sudo chown ftpuser:ftpusers /home/virtual
sudo touch /etc/vsftpd/virtual_users.txt
sudo nano /etc/vsftpd/virtual_users.txt
在文件中添加以下内容,然后保存并关闭文件:
virtualuser1
your_password
virtualuser2
your_password
db-util,用于生成虚拟用户数据库:sudo apt-get install db-util
sudo db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db
/etc/pam.d/vsftpd文件,启用PAM认证:sudo nano /etc/pam.d/vsftpd
在文件顶部添加以下行:
auth required pam_userdb.so db=/etc/vsftpd/virtual_users
account required pam_userdb.so db=/etc/vsftpd/virtual_users
/etc/vsftpd.conf文件,启用虚拟用户并配置相关选项:sudo nano /etc/vsftpd.conf
确保以下设置已启用或添加到文件中:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
guest_enable=YES
guest_username=ftpuser
virtual_use_local_privs=YES
user_sub_token=$USER
local_root=/home/virtual/$USER
sudo systemctl restart vsftpd
现在,您已经成功设置了VSFTPD虚拟用户。您可以使用创建的虚拟用户名和密码登录FTP服务器。