首页主机资讯如何在Ubuntu上配置FTP服务器共享文件夹

如何在Ubuntu上配置FTP服务器共享文件夹

时间2025-12-03 22:13:04发布访客分类主机资讯浏览255
导读:在 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
Linux中Golang日志如何实现分割 Ubuntu FTP服务器日志查看方法

游客 回复需填写必要信息