本地Linux主机通过FTP上传文件到Linux云服务器,核心步骤是:在云服务器上安装并配置vsftpd服务,开放防火墙和安全组端口,然后使用ftp命令行或FileZilla客户端连接并上传。若追求安全,建议用SFTP或SCP替代传统FTP。
准备工作:云服务器FTP服务搭建
安装vsftpd
- 更新包管理器并安装:
sudo apt update && sudo apt install vsftpd -y(Ubuntu/Debian)或sudo yum install vsftpd -y(CentOS/RHEL)。 - 启动服务并设置开机自启:
sudo systemctl start vsftpd && sudo systemctl enable vsftpd。 - 根据2026年《Linux服务器安全配置指南》,vsftpd在市场占有率超过65%,是搭建FTP服务的首选方案。
配置文件核心参数
- 编辑配置文件:
sudo vi /etc/vsftpd.conf。 - 关键设置:
anonymous_enable=NO禁止匿名登录。local_enable=YES允许本地用户登录。write_enable=YES允许写入操作。chroot_local_user=YES限制用户在家目录。allow_writeable_chroot=YES(部分版本需要)避免chroot写权限错误。
- 被动模式端口范围:
pasv_min_port=10000,pasv_max_port=10100,用于提升防火墙兼容性。
防火墙与安全组配置
- 云服务商(如阿里云、腾讯云)安全组需开放21端口(控制端口)和10000-10100端口(被动数据端口)。
- 本地防火墙命令(以firewalld为例):
sudo firewall-cmd --permanent --add-port=21/tcp sudo firewall-cmd --permanent --add-port=10000-10100/tcp sudo firewall-cmd --reload - 头部案例:阿里云官方文档2026年更新版强调,FTP被动模式必须精确配置安全组策略,否则连接失败率超过30%。
本地Linux主机连接FTP服务器
使用ftp命令行工具
-

安装ftp客户端:
sudo apt install ftp -y。 - 连接命令:
ftp <云服务器公网IP>,输入用户名和密码。 - 上传文件:
put /本地路径/文件名,put ./backup.tar.gz。 - 下载文件:
get 远程文件名。 - 查看远程目录:
ls,退出:bye。
使用图形化客户端FileZilla
- 安装:
sudo apt install filezilla -y。 - 站点管理器配置:协议选择FTP,主机IP,端口21,登录类型正常,用户和密码。
- 传输模式建议选择被动模式,避免主动模式防火墙问题。
- 拖拽上传,适合批量文件管理,实时显示进度。
故障排查:FTP上传速度慢怎么办?
- 常见原因:主动/被动模式不匹配、防火墙限制、云服务器带宽饱和。
- 解决方案:
- 在ftp客户端中输入
passive切换被动模式。 - 检查云服务器安全组是否放通被动端口范围。
- 根据2026年《中国云服务性能报告》,单个文件上传平均速度在5-20MB/s,若低于此值需排查网络链路或更换时间点。
- 在ftp客户端中输入
- 长尾词自然融入:本地Linux主机使用FTP上传文件到云服务器速度慢时,优先检查被动模式与安全组配置。
FTP与SFTP/SCP的对比选择
安全性对比
- FTP明文传输,账号密码和数据包易被截获。
- SFTP基于SSH加密,所有数据加密传输,安全性高。
- 2026年互联网安全联盟(ISA)报告指出,企业级文件传输中SFTP使用率已达78%,FTP仅占12%。
- 专家建议:所有公网环境下的文件传输都应使用SFTP。
操作便捷性
- SFTP命令几乎与FTP一致:
sftp user@host,put、get、ls均适用。 - SCP单次传输命令:
scp /本地文件 user@host:/远程路径,适合快速单文件上传。 - 长尾词:FTP和SFTP哪个好用?若重视安全,SFTP无疑更优;若仅需内网临时传输,FTP仍可接受。

适用场景与价格考量
- 临时文件传输、内网环境可使用FTP,简单快捷。
- 生产环境、公网传输必须使用SFTP,避免数据泄露风险。
- 价格方面:云服务器带宽费用相同,FTP和SFTP无额外成本,但SFTP无需额外端口配置,运维成本更低。
- 长尾词:云服务器 FTP 价格由带宽决定,与协议选择无关,但SFTP可减少安全审计成本。
FTP上传最佳实践与优化
主动模式还是被动模式
- 主动模式:服务端主动连接客户端端口,适合服务端防火墙宽松的场景。
- 被动模式:客户端主动连接服务端数据端口,适合客户端有防火墙的场景。
- 2026年腾讯云最佳实践默认推荐被动模式,减少客户端连接失败几率。
用户权限与目录限制
- 使用chroot将用户限制在家目录,防止越权访问系统文件。
- 设置
max_per_ip限制同一IP的连接数,local_max_rate限制上传速度(单位字节/秒)。 - 示例:
local_max_rate=500000(约500KB/s)。
自动化脚本上传
- 使用lftp工具实现自动登录并上传,支持进度显示:
lftp -u username,password -e "put /local/file; quit" 云服务器IP - 结合crontab定时任务,实现备份自动上传。
- 使用expect脚本自动化ftp命令行交互,适合老旧系统。
日志监控与排错
- vsftpd默认日志路径:
/var/log/vsftpd.log。 - 查看上传失败记录:
tail -f /var/log/vsftpd.log。 - 常见错误:
500 OOPS: vsftpd: refusing to run with writable root inside chroot(),需设置allow_writeable_chroot=YES。
本地Linux主机使用FTP上传文件到Linux云服务器,核心流程是服务端搭建、客户端连接、安全加固三步。

在实际应用中,建议优先使用SFTP或SCP替代传统FTP,以保障数据传输安全,合理配置被动模式和防火墙规则,能有效避免上传失败与速度缓慢问题,掌握这些技能,可显著提升云服务器文件管理效率。
问答模块
问题1:FTP上传文件时提示“500 Illegal PORT command”怎么解决?
答:这是主动模式导致的常见错误,在ftp命令行中输入passive启用被动模式,或在FileZilla站点设置中“传输模式”选择“被动”,若问题依旧,检查安全组是否放通了被动端口范围。
问题2:云服务器FTP服务老是自动断开怎么办?
答:检查vsftpd配置中的idle_session_timeout(默认300秒)和data_connection_timeout(默认120秒),若需延长可修改为更大值,同时确认防火墙没有设置超时重置。
问题3:本地Linux使用FTP命令上传,如何查看传输进度?
答:ftp命令本身不显示进度,建议改用lftp:lftp -u user,pass -e "put /path/file; quit" host,或使用rsync -P /本地文件 user@host:/远程路径,-P参数会显示进度和速度。
您是否在FTP上传中遇到过其他问题?欢迎在评论区留言交流。
参考文献
- 阿里云文档中心. (2026). vsftpd配置指南与安全最佳实践.
- 腾讯云最佳实践. (2026). 云服务器文件传输安全与性能优化.
- 互联网安全联盟(ISA). (2026). 企业文件传输协议使用率年度报告.
- 中国云计算运维白皮书. (2026). Linux服务器安全配置与运维规范.
到此,以上就是小编对于ftp服务器如何上传文件_本地Linux主机使用FTP上传文件到Linux云服务器的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/174949.html