在CentOS上,首先需要安装FileZilla Server(FTP服务端)。若未安装,可通过以下命令完成(需联网):
# 添加EPEL仓库(若未添加)
sudo yum install epel-release -y
# 安装FileZilla Server
sudo yum install filezilla-server -y
安装完成后,启动服务并设置开机自启:
sudo systemctl start filezilla-server
sudo systemctl enable filezilla-server
通过系统命令创建专用FTP用户(避免使用root用户),并设置密码:
# 创建用户(例如用户名:ftpuser)
sudo adduser ftpuser
# 设置密码(按提示输入两次)
sudo passwd ftpuser
为用户指定专属主目录(如/home/ftpuser),并调整目录所有权与权限:
# 修改用户主目录(可选,若需自定义路径)
sudo usermod -d /home/ftpuser ftpuser
# 设置目录所有者(用户:组)
sudo chown -R ftpuser:ftpuser /home/ftpuser
# 设置目录权限(所有者可读写执行,其他用户仅读执行)
sudo chmod -R 755 /home/ftpuser
注意:755权限是FTP用户的常用配置,既保证用户可操作自己的文件,又防止其他用户修改。
打开FileZilla Server管理器(图形界面),依次完成以下步骤:
Edit → Users,进入用户列表页面。Add按钮,输入用户名(如ftpuser)和密码,点击OK。Edit进入详情页。General选项卡中,找到Home directory字段,输入用户的主目录路径(如/home/ftpuser)。Shared folders选项卡,点击Add添加共享文件夹(可选择用户主目录或其他目录),然后为该文件夹分配权限:
OK保存用户设置,重启FileZilla Server使配置生效:sudo systemctl restart filezilla-server
setfacl命令:# 给用户添加写权限(不覆盖原有权限)
sudo setfacl -m u:ftpuser:rwx /home/ftpuser/upload_dir
# 查看ACL权限
sudo getfacl /home/ftpuser/upload_dir
chroot(锁定用户根目录)增强安全性,在/etc/vsftpd.conf中添加:chroot_local_user=YES
allow_writeable_chroot=YES
重启vsftpd服务使配置生效:sudo systemctl restart vsftpd
755)及所有者(需为对应用户),确认FileZilla Server配置中Home directory路径正确。write_enable=YES(vsftpd配置)且用户拥有目录写入权限。通过以上步骤,可完成CentOS中FileZilla用户权限的管理,实现细粒度的访问控制,保障服务器文件安全。