网络知识
Debian上vsftpd如何设置虚拟用户
2025-07-12 15:56  点击:0

在Debian上设置vsftpd虚拟用户需要以下几个步骤:

    安装vsftpd:
sudo apt-get updatesudo apt-get install vsftpd
    创建一个新用户组,用于存放虚拟用户:
sudo groupadd vuser_group
    创建一个新用户,用于存放虚拟用户的FTP数据:
sudo useradd -g vuser_group -s /sbin/nologin -d /home/virtual vuser

vuser替换为你想要的虚拟用户名。

    为新用户设置密码:
sudo passwd vuser

按照提示输入并确认密码。

    创建一个目录,用于存放虚拟用户的FTP数据:
sudo mkdir /home/virtual
    更改虚拟用户主目录的权限:
sudo chown vuser:vuser_group /home/virtual
    安装并配置db4-utils,用于存储虚拟用户信息:
sudo apt-get install db4-utils
    创建一个虚拟用户数据库文件:
sudo touch /etc/vsftpd/virtusers.txt
    使用文本编辑器打开虚拟用户数据库文件,并添加虚拟用户信息。例如,添加一个用户名为testuser,密码为testpassword的虚拟用户:
sudo nano /etc/vsftpd/virtusers.txt

在文件中添加以下内容:

testuser:testpassword

保存并关闭文件。

    创建一个PAM(Pluggable Authentication Modules)配置文件,用于vsftpd验证虚拟用户:
sudo touch /etc/pam.d/vsftpd-virtual
    使用文本编辑器打开PAM配置文件,并添加以下内容:
sudo nano /etc/pam.d/vsftpd-virtual

在文件中添加以下内容:

auth required pam_userdb.so db=/etc/vsftpd/virtusers.txtaccount required pam_userdb.so db=/etc/vsftpd/virtusers.txt

保存并关闭文件。

    修改vsftpd配置文件,启用虚拟用户并使用PAM进行验证:
sudo nano /etc/vsftpd.conf

找到以下行并进行修改:

# 使用本地用户登录# local_enable=YESlocal_enable=NO# 使用虚拟用户登录guest_enable=YES# 指定虚拟用户的主目录guest_username=vuser# 使用PAM进行验证pam_service_name=vsftpd-virtual

保存并关闭文件。

    重启vsftpd服务以应用更改:
sudo systemctl restart vsftpd

现在,你应该可以使用虚拟用户登录FTP了。请注意,这些步骤仅适用于Debian系统。在其他Linux发行版上,步骤可能略有不同。