如何在Ubuntu上配置FTP服务器共享文件夹
导读:在 Ubuntu 上使用 vsftpd 配置共享文件夹 一 安装与基础准备 安装 vsftpd:sudo apt update && sudo apt install vsftpd 启动并设置开机自启:sudo syste...
在 Ubuntu 上使用 vsftpd 配置共享文件夹
一 安装与基础准备
- 安装 vsftpd:sudo apt update & & sudo apt install vsftpd
- 启动并设置开机自启:sudo systemctl start vsftpd & & sudo systemctl enable vsftpd
- 备份默认配置:sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
- 创建用于共享的系统用户(示例用户名为 ftpuser):sudo adduser ftpuser(按提示设置密码,家目录将作为默认根目录)
二 配置共享目录与权限
- 创建共享目录(示例放在用户家目录下):sudo mkdir -p /home/ftpuser/share
- 设置目录属主与权限:sudo chown -R ftpuser:ftpuser /home/ftpuser/share;如需要全局可读可写可临时使用 sudo chmod -R 777 /home/ftpuser/share(生产环境请按最小权限原则设置)
- 配置 vsftpd 使用共享目录(编辑 /etc/vsftpd.conf):
- 禁用匿名:anonymous_enable=NO
- 允许本地用户:local_enable=YES
- 允许写操作:write_enable=YES
- 将本地用户限制在其家目录:chroot_local_user=YES
- 允许被限制的 chroot 目录可写:allow_writeable_chroot=YES
- 指定登录后根目录:local_root=/home/ftpuser/share
- 使配置生效:sudo systemctl restart vsftpd
三 防火墙与被动模式
- 放行控制端口:sudo ufw allow 21/tcp
- 放行被动模式数据端口范围(示例为 40000–50000,可按需调整):sudo ufw allow 40000:50000/tcp
- 在 /etc/vsftpd.conf 中启用并配置被动模式(示例):
- pasv_enable=YES
- pasv_min_port=40000
- pasv_max_port=50000
- pasv_address=你的服务器公网或内网IP(云服务器建议使用公网 IP)
- 重启服务:sudo systemctl restart vsftpd
- 说明:若客户端在 NAT/云环境中,务必正确设置 pasv_address;仅放行 21 端口不足以完成数据传输
四 客户端连接与测试
- 命令行测试:ftp your_server_ip,使用 ftpuser 与密码登录,执行 ls、put、get 验证读写
- 图形客户端(如 FileZilla):协议选 FTP – Explicit FTP over TLS(若启用 TLS),主机填服务器 IP,端口 21,登录类型选 Normal,输入用户名与密码测试上传/下载
- 若使用 Windows 资源管理器访问:在地址栏输入 ftp://your_server_ip,输入凭据后测试;如出现被动模式问题,可在客户端取消“使用被动 FTP”或按服务器配置调整
五 安全与常见问题
- 安全建议
- 禁用匿名访问(anonymous_enable=NO),仅使用系统用户或虚拟用户
- 启用 TLS/SSL 加密(配置 ssl_enable=YES,配置证书路径),避免明文传输
- 限制可登录用户:在 /etc/vsftpd.user_list 与 /etc/vsftpd.ftpusers 中管理;当 userlist_deny=NO 时仅允许列表内用户登录
- 目录权限遵循最小权限原则,避免使用 777;必要时用 ACL 精细化授权
- 常见故障排查
- 登录被拒绝:检查用户是否在 ftpusers 中、密码是否正确、家目录权限是否允许访问
- 能登录但无法列出目录/传输:检查防火墙是否放行 21 与被动端口范围,以及 pasv_address 是否正确
- 启用 chroot 后写入失败:确认配置 allow_writeable_chroot=YES,或调整目录权限结构
- 云服务器端口未生效:在云厂商安全组放行 21 与被动端口范围,并确保 pasv_address 为服务器公网 IP
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何在Ubuntu上配置FTP服务器共享文件夹
本文地址: https://pptw.com/jishu/762827.html
