在 Linux(以及通用网络环境)中,SFTP 和 FTP 是两种常用于文件传输的协议,但它们在原理、安全性和使用方式上有明显区别。
| 对比项 | FTP | SFTP |
|---|---|---|
| 安全性 | 明文传输(账号、密码、数据) | 全程加密 |
| 端口 | 21(控制)+ 20(数据) | 22 |
| 是否加密 | 否(FTPS 才加密) | 是 |
| 认证方式 | 用户名/密码 | 用户名/密码 或 SSH 密钥 |
| 防火墙友好 | 差(多端口) | 好(单端口) |
| 依赖服务 | vsftpd / proftpd | sshd |
| 速度 | 略快(无加密开销) | 略慢(加密开销) |
✅ 现代 Linux 环境推荐 SFTP
ftp ftp.example.com
Name: user
Password: ******
ftp> put file.txt
sftp user@server
sftp> put file.txt
SFTP 命令和 FTP 类似,但底层更安全。
vsftpdproftpdsshd 提供FTP 快但不安全,SFTP 安全且现代,Linux 服务器几乎都该用 SFTP。
如果你是:
如果你愿意,我也可以帮你:
scp / rsync / sftp 的使用场景