在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
sudo chmod 600 /etc/vsftpd/virtual_users.txt
然后,使用文本编辑器打开文件,并添加虚拟用户的用户名和密码。每行一个用户,格式为用户名:密码
。例如:
user1
password1
user2
password2
创建虚拟用户映射:
安装db-util
工具来生成虚拟用户映射数据库:
sudo apt-get install db-util
使用db_load
命令创建虚拟用户映射数据库:
sudo db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db
sudo chmod 600 /etc/vsftpd/virtual_users.db
配置vsftpd:
使用文本编辑器打开/etc/vsftpd.conf
文件:
sudo nano /etc/vsftpd.conf
修改以下配置项:
anonymous_enable=YES
改为anonymous_enable=NO
,禁止匿名用户登录。local_enable=YES
的注释,允许本地用户登录。write_enable=YES
的注释,允许FTP写操作。guest_enable=YES
guest_username=ftp
virtual_use_local_privs=YES
user_sub_token=$USER
local_root=/home/$USER
chroot_local_user=YES
allow_writeable_chroot=YES
pam_service_name=vsftpd-virtual
userlist_enable=YES
tcp_wrappers=YES
保存并关闭文件。
配置PAM(可插拔认证模块):
创建一个名为/etc/pam.d/vsftpd-virtual
的文件:
sudo touch /etc/pam.d/vsftpd-virtual
sudo chmod 600 /etc/pam.d/vsftpd-virtual
使用文本编辑器打开文件,并添加以下内容:
auth required pam_userdb.so db=/etc/vsftpd/virtual_users
account required pam_userdb.so db=/etc/vsftpd/virtual_users
重启vsftpd服务:
sudo systemctl restart vsftpd
现在,您已经成功配置了vsftpd虚拟用户。您可以使用创建的虚拟用户名和密码登录FTP服务器。