centos

centos上vsftp虚拟用户怎么配置

小樊
46
2025-06-28 09:42:31
栏目: 云计算

在CentOS上配置VSFTPD以使用虚拟用户需要以下几个步骤:

  1. 安装VSFTPD:
sudo yum install vsftpd
  1. 创建虚拟用户数据库文件:
sudo touch /etc/vsftpd/virtusers.txt
  1. 添加虚拟用户到数据库文件中:
sudo vi /etc/vsftpd/virtusers.txt

在文件中添加虚拟用户的用户名和密码,每行一个用户,格式如下:

username1
password1
username2
password2

保存并退出。

  1. 创建虚拟用户映射目录:
sudo mkdir /etc/vsftpd/virtusers
  1. 创建虚拟用户映射文件:
sudo touch /etc/pam.d/vsftpd-virtusers
  1. 编辑虚拟用户映射文件:
sudo vi /etc/pam.d/vsftpd-virtusers

在文件中添加以下内容:

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

保存并退出。

  1. 配置VSFTPD:
sudo vi /etc/vsftpd/vsftpd.conf

在文件中添加或修改以下配置:

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
guest_enable=YES
guest_username=ftpuser
virtual_use_local_privs=YES
user_sub_token=$USER
local_root=/home/$USER
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
pam_service_name=vsftpd-virtusers

保存并退出。

  1. 创建虚拟用户的主目录:
sudo useradd -d /home/virtuser -s /sbin/nologin virtuser
sudo passwd virtuser

按照提示输入虚拟用户的密码。

  1. 将虚拟用户添加到chroot_list:
echo "virtuser" | sudo tee -a /etc/vsftpd/chroot_list
  1. 重启VSFTPD服务:
sudo systemctl restart vsftpd

现在,您应该可以使用虚拟用户登录FTP了。请注意,这里的示例配置仅适用于单个虚拟用户。如果您需要支持多个虚拟用户,请确保为每个用户创建单独的主目录,并在/etc/vsftpd/virtusers.txt文件中添加相应的用户名和密码。

0
看了该问题的人还看了