如何配置Ubuntu VSFTPD用户权限
导读:Ubuntu下VSFTPD用户权限配置步骤 1. 安装VSFTPD 首先更新系统包列表并安装vsftpd(Very Secure FTP Daemon): sudo apt update sudo apt install vsftpd 2...
Ubuntu下VSFTPD用户权限配置步骤
1. 安装VSFTPD
首先更新系统包列表并安装vsftpd(Very Secure FTP Daemon):
sudo apt update
sudo apt install vsftpd
2. 配置VSFTPD基础权限
编辑vsftpd主配置文件/etc/vsftpd.conf(使用nano或vim):
sudo nano /etc/vsftpd.conf
关键配置项说明(根据需求调整):
- 禁止匿名访问(提升安全性):
anonymous_enable=NO - 允许本地用户登录:
local_enable=YES - 开启写入权限(允许用户上传/修改文件):
write_enable=YES - 限制用户到主目录(chroot jail,防止访问系统其他目录):
chroot_local_user=YES allow_writeable_chroot=YES # 必须开启,否则chroot环境下无法写入 - 可选:启用用户列表控制(精确控制允许/拒绝的用户):
userlist_enable=YES userlist_file=/etc/vsftpd.user_list userlist_deny=NO # 设置为NO时,列表内用户允许访问;设为YES则拒绝
注意:修改配置文件后,需重启vsftpd服务使更改生效:
sudo systemctl restart vsftpd
3. 创建FTP用户并设置权限
(1)创建系统用户(用于FTP登录)
使用adduser命令创建用户(按提示设置密码及其他信息):
sudo adduser ftpuser
(2)设置用户主目录权限
确保用户主目录归该用户所有,且权限为755(允许用户读取/执行,组和其他用户仅读取):
sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser
(3)强化chroot环境安全
若启用了chroot_local_user=YES,需将用户主目录的所有权改为root(防止用户通过FTP修改主目录结构):
sudo chown root:root /home/ftpuser
sudo chmod 755 /home/ftpuser
(4)创建用户专属目录(可选)
若需用户拥有独立存储空间,可在主目录下创建子目录并赋予权限:
sudo mkdir /home/ftpuser/files
sudo chown ftpuser:ftpuser /home/ftpuser/files
4. 可选:通过用户列表精细控制权限
(1)创建用户列表文件
sudo touch /etc/vsftpd.user_list
sudo nano /etc/vsftpd.user_list
(2)添加允许/拒绝的用户
每行输入一个用户名(如仅允许ftpuser1、ftpuser2访问):
ftpuser1
ftpuser2
(3)配置列表行为
在/etc/vsftpd.conf中设置:
userlist_enable=YES
userlist_file=/etc/vsftpd.user_list
userlist_deny=NO # 设为NO时,列表内用户允许访问;设为YES则拒绝
5. 防火墙设置(允许FTP流量)
若系统启用了ufw防火墙,需开放FTP端口及被动模式端口:
sudo ufw allow 21/tcp # FTP控制端口(默认21)
sudo ufw allow 990/tcp # FTPS加密控制端口(可选)
sudo ufw allow 40000:50000/tcp # 被动模式数据端口范围(根据实际情况调整)
sudo ufw enable # 启用防火墙
6. 测试FTP连接
使用FTP客户端(如FileZilla)连接服务器:
- 主机:服务器IP地址
- 用户名/密码:创建的FTP用户凭证
- 端口:21(或990,若启用了FTPS)
测试上传、下载及目录访问权限,确保配置生效。
常见问题排查
- 无法上传文件:检查
write_enable=YES是否开启,主目录权限是否正确(chmod 755)。 - 无法登录:确认
local_enable=YES,用户是否在userlist中且userlist_deny=NO。 - chroot环境无法写入:确保开启了
allow_writeable_chroot=YES,且主目录所有权为root。
通过以上步骤,可完成Ubuntu下VSFTPD用户权限的基本配置,兼顾安全性与实用性。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何配置Ubuntu VSFTPD用户权限
本文地址: https://pptw.com/jishu/735912.html
