在Debian上设置vsftpd虚拟用户需要以下几个步骤:
sudo apt-get update
sudo apt-get install vsftpd
sudo groupadd vuser_group
sudo useradd -g vuser_group -s /sbin/nologin -d /home/virtual vuser
将vuser
替换为你想要的虚拟用户名。
sudo passwd vuser
按照提示输入并确认密码。
sudo mkdir /home/virtual
sudo chown vuser:vuser_group /home/virtual
sudo apt-get install db4-utils
sudo touch /etc/vsftpd/virtusers.txt
testuser
,密码为testpassword
的虚拟用户:sudo nano /etc/vsftpd/virtusers.txt
在文件中添加以下内容:
testuser:testpassword
保存并关闭文件。
sudo touch /etc/pam.d/vsftpd-virtual
sudo nano /etc/pam.d/vsftpd-virtual
在文件中添加以下内容:
auth required pam_userdb.so db=/etc/vsftpd/virtusers.txt
account required pam_userdb.so db=/etc/vsftpd/virtusers.txt
保存并关闭文件。
sudo nano /etc/vsftpd.conf
找到以下行并进行修改:
# 使用本地用户登录
# local_enable=YES
local_enable=NO
# 使用虚拟用户登录
guest_enable=YES
# 指定虚拟用户的主目录
guest_username=vuser
# 使用PAM进行验证
pam_service_name=vsftpd-virtual
保存并关闭文件。
sudo systemctl restart vsftpd
现在,你应该可以使用虚拟用户登录FTP了。请注意,这些步骤仅适用于Debian系统。在其他Linux发行版上,步骤可能略有不同。