如何在服务器里安全传文件? | 高效文件上传技巧全解析
- 互联网
- 2026-02-07
- 2905
SCP (Secure Copy)
基于 SSH 的安全传输,适合中小文件。
# 本地 → 远程服务器 scp -P 22 /本地/文件.txt 用户名@远程IP:/远程/目录/ # 远程服务器 → 本地 scp -P 22 用户名@远程IP:/远程/文件.txt /本地/目录/ # 服务器A → 服务器B(通过本地中转) scp -P 22 用户A@IP_A:/文件.txt 用户B@IP_B:/目录/
注意:-P 指定 SSH 端口(默认 22 可省略)。
Rsync (增量同步)
高效同步工具,支持断点续传和增量传输。
# 本地 → 远程(压缩+递归目录) rsync -avzP -e "ssh -p 22" /本地/目录/ 用户名@远程IP:/远程/目录/ # 远程 → 本地 rsync -avzP -e "ssh -p 22" 用户名@远程IP:/远程/目录/ /本地/目录/
参数说明:

- -a:归档模式(保留权限等)
- -v:显示详情
- -z:压缩传输
- -P:显示进度和断点续传
SFTP (SSH File Transfer)
交互式安全传输,适合手动操作。

# 连接服务器 sftp -P 22 用户名@远程IP # 常用命令 put /本地/文件.txt # 上传 get /远程/文件.txt # 下载 ls # 列目录 cd /远程/目录 # 切换目录
SSH + Tar (大文件/目录)
直接打包传输,避免中间文件。
# 本地目录 → 远程目录(免中间文件) tar czf - /本地/目录 | ssh -p 22 用户名@远程IP "tar xzf - -C /远程/目录" # 远程目录 → 本地目录 ssh -p 22 用户名@远程IP "tar czf - /远程/目录" | tar xzf - -C /本地/目录
HTTP/FTP 下载
开放文件下载(需提前部署服务):
# 在源服务器启动 Python 临时 HTTP 服务 python3 -m http.server 8000 # 在目标服务器下载 wget http://源服务器IP:8000/文件.txt
云存储中转
通过云服务中转(如 AWS S3、阿里云 OSS):
# 上传到云存储 aws s3 cp 文件.txt s3://bucket名/ # 从云存储下载 aws s3 cp s3://bucket名/文件.txt ./
注意事项:
- 防火墙:确保端口开放(如 SSH 的 22 端口)。
- 权限:目标目录需有写入权限(chmod 检查)。
- 大文件:建议用 rsync 或 tar + ssh 避免中断。
- 安全性:优先使用 SSH 相关工具(SCP/Rsync/SFTP)。
根据需求选择最合适的方式!
