在Ubuntu下配置vsftpd虚拟用户,需要遵循以下步骤:
安装vsftpd: 在终端中输入以下命令来安装vsftpd:
sudo apt-get update
sudo apt-get install vsftpd
创建虚拟用户数据库:
使用以下命令创建一个名为/etc/vsftpd/virtual_users.txt的文件,用于存储虚拟用户的用户名和密码。
sudo touch /etc/vsftpd/virtual_users.txt
添加虚拟用户:
使用文本编辑器(如nano)打开/etc/vsftpd/virtual_users.txt文件,并添加虚拟用户的用户名和密码。例如:
user1
password1
user2
password2
保存并关闭文件。
创建虚拟用户映射目录:
使用以下命令创建一个名为/etc/vsftpd/virtual_users的目录,用于存储虚拟用户的家目录。
sudo mkdir /etc/vsftpd/virtual_users
设置虚拟用户的家目录权限: 使用以下命令设置虚拟用户家目录的权限,以便FTP用户可以访问。
sudo chown nobody:nogroup /etc/vsftpd/virtual_users
sudo chmod 755 /etc/vsftpd/virtual_users
安装并配置db_load工具:
db_load工具用于将文本文件转换为数据库文件。首先安装libdb-utils包:
sudo apt-get install libdb-utils
然后,使用以下命令将virtual_users.txt文件转换为数据库文件/etc/vsftpd/virtual_users.db:
sudo db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db
配置vsftpd:
使用文本编辑器打开/etc/vsftpd.conf文件,进行以下配置:
sudo nano /etc/vsftpd.conf
在文件中添加或修改以下配置项:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
guest_enable=YES
guest_username=nobody
user_sub_token=$USER
local_root=/etc/vsftpd/virtual_users/$USER
virtual_use_local_privs=YES
pam_service_name=vsftpd
保存并关闭文件。
创建PAM配置文件:
使用文本编辑器创建一个名为/etc/pam.d/vsftpd的文件:
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
保存并关闭文件。
重启vsftpd服务: 使用以下命令重启vsftpd服务以应用更改:
sudo systemctl restart vsftpd
现在,您已经成功配置了Ubuntu下的vsftpd虚拟用户。您可以使用虚拟用户名和密码登录FTP服务器。