在CentOS系统中,使用vsftpd进行多用户管理可以通过以下步骤实现:
首先,确保你已经安装了vsftpd。如果没有安装,可以使用以下命令进行安装:
sudo yum install vsftpd
编辑vsftpd的配置文件 /etc/vsftpd/vsftpd.conf
,确保以下配置项正确设置:
listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
创建一个新的FTP用户,并设置其主目录和权限:
sudo useradd -m ftpuser
sudo passwd ftpuser
按照提示输入并确认密码。
确保FTP用户的家目录权限正确:
sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser
如果你希望使用PAM进行更细粒度的用户认证和管理,可以编辑 /etc/pam.d/vsftpd
文件,添加以下内容:
auth required pam_userdb.so db=/etc/vsftpd/vsftpd_user_list
account required pam_userdb.so db=/etc/vsftpd/vsftpd_user_list
然后创建 /etc/vsftpd/vsftpd_user_list
文件,并添加需要管理的FTP用户名:
echo "ftpuser" | sudo tee -a /etc/vsftpd/vsftpd_user_list
如果你希望使用虚拟用户而不是系统用户,可以按照以下步骤进行配置:
sudo yum install db4 db4-utils
sudo yum install vsftpd-pam
创建一个文件 /etc/vsftpd/virtusers.txt
,并添加虚拟用户名和密码:
ftpuser1
password1
ftpuser2
password2
生成数据库文件:
sudo db_load -T -t hash -f /etc/vsftpd/virtusers.txt /etc/vsftpd/virtusers.db
设置数据库文件的权限:
sudo chmod 600 /etc/vsftpd/virtusers.db
编辑 /etc/pam.d/vsftpd
文件,添加以下内容:
auth required pam_userdb.so db=/etc/vsftpd/virtusers
account required pam_userdb.so db=/etc/vsftpd/virtusers
编辑 /etc/vsftpd/vsftpd.conf
文件,添加或修改以下内容:
guest_enable=YES
guest_username=ftpuser
virtual_use_local_privs=YES
user_sub_token=$USER
local_root=/home/$USER
chroot_local_user=YES
allow_writeable_chroot=YES
最后,重启vsftpd服务以应用所有更改:
sudo systemctl restart vsftpd
使用FTP客户端连接到服务器,验证是否可以正常登录和管理文件。
通过以上步骤,你可以在CentOS系统中使用vsftpd进行多用户管理。根据你的具体需求,可以选择使用系统用户或虚拟用户进行配置。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:CentOS SFTP如何进行多用户管理