Linux 下用 vsftpd 与 FileZilla 进行文件传输
一 角色与协议选择
- vsftpd(Very Secure FTP Daemon) 是运行在 Linux 上的 FTP 服务器,负责提供文件上传下载服务。
- FileZilla 是跨平台的 FTP/FTPS/SFTP 客户端,用于连接服务器并进行传输。
- 传输协议要点:
- FTP 使用两条连接:控制连接(默认端口 21/TCP)与数据连接(主动模式服务器从 20/TCP 主动连客户端;被动模式由服务器开放高位端口等待客户端连入)。
- SFTP 基于 SSH,默认端口 22/TCP,加密传输、配置更简单。
- 在安全或跨公网环境,优先使用 SFTP 或 FTPS(FTP over SSL/TLS)。
二 快速上手流程
- 场景A(推荐):用 SFTP + vsftpd 账号体系(系统用户)
- 在 Linux 上创建系统用户(示例:ftpuser)
- 命令:
sudo useradd -m -s /bin/bash ftpuser && sudo passwd ftpuser
- 命令:
- 启动 vsftpd(若已安装)
- 命令:
sudo systemctl start vsftpd && sudo systemctl enable vsftpd
- 命令:
- 在 FileZilla 站点管理器 新建站点:
- 协议选 SFTP – SSH File Transfer Protocol;主机填服务器 IP;端口 22;登录类型“正常”;输入 ftpuser 与密码;连接后即可拖拽上传/下载。
- 在 Linux 上创建系统用户(示例:ftpuser)
- 场景B:用 FTP + vsftpd(系统用户)
- 安装与基础配置(示例为 CentOS 系)
- 安装:
sudo yum install -y vsftpd - 编辑:
sudo vim /etc/vsftpd/vsftpd.conf- 建议:
anonymous_enable=NO、local_enable=YES、write_enable=YES、chroot_local_user=YES、allow_writeable_chroot=YES
- 建议:
- 启动:
sudo systemctl start vsftpd && sudo systemctl enable vsftpd
- 安装:
- 防火墙放行 21/TCP(主动模式)
- 命令:
sudo firewall-cmd --permanent --add-port=21/tcp && sudo firewall-cmd --reload
- 命令:
- FileZilla 站点管理器:协议选 FTP – File Transfer Protocol;端口 21;输入用户名与密码连接。
- 若客户端在 NAT/云环境,优先在 vsftpd 启用被动模式(配置
pasv_enable=YES及pasv_min_port/pasv_max_port并在防火墙放行对应端口段)。
- 安装与基础配置(示例为 CentOS 系)
三 常见传输场景与配置要点
- 本地用户家目录隔离与禁锢
- 配置:
chroot_local_user=YES、allow_writeable_chroot=YES(允许被禁锢目录可写);如需白名单/黑名单,可用userlist_enable=YES与userlist_deny=NO/YES组合。
- 配置:
- 匿名访问(仅在内网/测试环境建议)
- 配置:
anonymous_enable=YES,并确保目标目录(如 /var/ftp/pub)具备写权限(如chmod 777 /var/ftp/pub),再按需开启anon_upload_enable、anon_mkdir_write_enable等。
- 配置:
- 大文件与限速
- 调整速率限制:
local_max_rate=0(0 为不限制)、anon_max_rate=0、max_per_ip=0;修改后重启 vsftpd。
- 调整速率限制:
- 传输模式
- 传输 压缩包/二进制文件 时,在客户端选择 二进制模式,避免解压损坏。
四 故障排查与安全建议
- 连接失败排查
- 确认服务已启动(
systemctl status vsftpd)、端口与协议匹配(FTP 用 21,SFTP 用 22)、用户名与密码正确;查看 /var/log/vsftpd/vsftpd.log 获取细节。
- 确认服务已启动(
- 被动模式与防火墙
- 若使用 FTP 被动模式,需在服务器开放一段高位端口范围(如
pasv_min_port=50000、pasv_max_port=51000),并在防火墙放行该范围;云服务器还需在 安全组 同步放行。
- 若使用 FTP 被动模式,需在服务器开放一段高位端口范围(如
- 安全建议
- 公网/敏感数据优先 SFTP 或 FTPS;FTP 明文凭据与数据易被窃听。
- 禁用匿名上传;必要时限制用户可写范围与速率;定期更新系统与组件。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1485997.html