在CentOS上配置VSFTPD以使用虛擬用戶需要以下幾個步驟:
sudo yum install vsftpd
sudo touch /etc/vsftpd/virtusers.txt
sudo vi /etc/vsftpd/virtusers.txt
在文件中添加虛擬用戶的用戶名和密碼,每行一個用戶,格式如下:
username1
password1
username2
password2
保存并退出。
sudo mkdir /etc/vsftpd/virtusers
sudo touch /etc/pam.d/vsftpd-virtusers
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
保存并退出。
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
保存并退出。
sudo useradd -d /home/virtuser -s /sbin/nologin virtuser
sudo passwd virtuser
按照提示輸入虛擬用戶的密碼。
echo "virtuser" | sudo tee -a /etc/vsftpd/chroot_list
sudo systemctl restart vsftpd
現在,您應該可以使用虛擬用戶登錄FTP了。請注意,這里的示例配置僅適用于單個虛擬用戶。如果您需要支持多個虛擬用戶,請確保為每個用戶創建單獨的主目錄,并在/etc/vsftpd/virtusers.txt
文件中添加相應的用戶名和密碼。