在Ubuntu上配置vsftpd虚拟用户的步骤如下:
sudo apt-get update
sudo apt-get install vsftpd pam db4-utils
sudo useradd -d /home/ftpsite -s /sbin/nologin virtual_user
sudo chown -R virtual_user:virtual_user /home/ftpsite
sudo chmod 755 /home/ftpsite
创建一个文本文件,例如 account.txt
,格式为奇数行为用户名,偶数行为用户密码。
user1 123456
user2 123456
使用 db_load
命令生成数据库文件:
sudo db_load -T -t hash -f account.txt /etc/vsftpd/account.db
sudo chmod 600 /etc/vsftpd/account.db
创建一个新的PAM文件,例如 /etc/pam.d/vsftp.vu
,并添加以下内容:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/account
account required /lib/security/pam_userdb.so db=/etc/vsftpd/account
编辑 /etc/vsftpd/vsftpd.conf
文件,启用虚拟用户功能,并添加以下配置:
anonymous_enable=NO
local_enable=YES
chroot_local_user=YES
guest_enable=YES
guest_username=virtual_user
pam_service_name=vsftp.vu
user_list_enable=YES
user_list_file=/etc/vsftpd/ftpusers
sudo systemctl restart vsftpd
现在,您可以使用创建的虚拟用户名和密码登录FTP服务器了。请注意,为了安全起见,建议您定期更新密码并监控用户活动。