温馨提示×

centos上vsftp的虚拟用户设置

小樊
46
2025-11-17 18:11:27
栏目: 云计算

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

  1. 安装VSFTPD:
sudo yum install vsftpd
  1. 创建一个新组(可选):
sudo groupadd vuser_group
  1. 创建一个新用户(虚拟用户):
sudo useradd -M -s /sbin/nologin vuser

这里,-M表示不创建用户主目录,-s /sbin/nologin表示禁止用户登录系统。

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

按照提示输入密码。

  1. 创建一个虚拟用户映射文件:
sudo touch /etc/vsftpd/virtusers.txt
  1. 编辑虚拟用户映射文件,添加虚拟用户和系统用户的映射关系:
sudo vi /etc/vsftpd/virtusers.txt

在文件中添加以下内容(将vuser替换为你创建的虚拟用户名,将realuser替换为一个实际存在的系统用户):

vuser realuser
  1. 创建一个PAM(Pluggable Authentication Modules)文件,用于验证虚拟用户:
sudo touch /etc/pam.d/vsftpd-virt
  1. 编辑PAM文件,添加以下内容:
sudo vi /etc/pam.d/vsftpd-virt

在文件中添加以下内容:

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

在文件中添加或修改以下内容:

guest_enable=YES
guest_username=vuser
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-virt
  1. 重启VSFTPD服务:
sudo systemctl restart vsftpd

现在,你应该可以使用虚拟用户登录FTP了。请注意,这里的示例仅用于演示目的,实际配置可能需要根据你的需求进行调整。

0