Ubuntu FTP Server怎样设置存储路径
导读:Ubuntu FTP Server 存储路径设置指南 一、准备与安装 安装 vsftpd(Ubuntu 常用 FTP 服务):sudo apt-get update && sudo apt-get install vsft...
Ubuntu FTP Server 存储路径设置指南
一、准备与安装
- 安装 vsftpd(Ubuntu 常用 FTP 服务):sudo apt-get update & & sudo apt-get install vsftpd
- 启动并检查状态:sudo systemctl start vsftpd & & sudo systemctl status vsftpd
- 备份默认配置:sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
二、设置存储路径的两种方式
-
方式 A 全局默认根目录(所有本地用户)
- 编辑配置文件:sudo vim /etc/vsftpd.conf
- 设置默认根目录(示例为:/var/ftp):local_root=/var/ftp
- 允许写入:write_enable=YES
- 可选:限制用户在其主目录 chroot_local_user=YES
- 说明:此设置对所有本地用户生效,登录后直接进入 local_root 指定的目录
-
方式 B 指定系统用户的家目录为存储路径
- 创建用户并指定家目录(示例:/data/ftpuser):sudo useradd -d /data/ftpuser -m ftpuser
- 设置密码:sudo passwd ftpuser
- 如需禁止该用户 SSH 登录,仅允许 FTP:echo “DenyUsers ftpuser” | sudo tee -a /etc/ssh/sshd_config & & sudo systemctl restart sshd
- 说明:vsftpd 默认以用户的家目录为根目录,无需额外配置 local_root;如需统一根目录,可对该用户使用方式 A 的 local_root 覆盖
三、目录权限与所有权
- 建议做法:将目录所有者设为对应用户,权限为 755(或更严格的 750)
- 示例:sudo chown -R ftpuser:ftpuser /var/ftp 或 /data/ftpuser
- 示例:sudo chmod -R 755 /var/ftp
- 不建议使用 777,存在安全风险;若遇到写入失败,优先检查目录属主与权限,而非放宽到 777
四、防火墙与被动模式端口(如使用 ufw)
- 放行控制端口:sudo ufw allow 21/tcp
- 放行被动模式端口范围(示例:40000–50000):sudo ufw allow 40000:50000/tcp
- 启用防火墙:sudo ufw enable
- 说明:主动模式由服务器从 20/tcp 主动连客户端数据端口;被动模式由服务器开放一段端口范围供客户端连接
五、常见报错与排查
-
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
- 原因:启用了 chroot 且用户根目录可写
- 解决:在 /etc/vsftpd.conf 中添加 allow_writeable_chroot=YES,或将可写目录放到子目录中并对根目录只读
-
500 OOPS: could not read chroot() list file: /etc/vsftpd.chroot_list
- 原因:启用了 chroot 名单但未创建文件
- 解决:sudo touch /etc/vsftpd.chroot_list(按需往里添加例外用户)
-
553 Could not create file
- 原因:目录无写权限或属主不正确
- 解决:确认目录属主为登录用户,权限为 755/750,避免使用 777
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu FTP Server怎样设置存储路径
本文地址: https://pptw.com/jishu/785954.html
