文件传输协议 (FTP) 和安全文件传输协议 (SFTP) 的区别


FTP和SFTP都是文件传输协议,用于在两个系统之间传输文件。FTP不使用任何安全通道传输文件,而SFTP使用SSH协议建立控制连接。SFTP比FTP安全得多。

阅读本文以了解更多关于FTP和SFTP的信息以及它们彼此之间的区别。

什么是文件传输协议 (FTP)?

FTP代表文件传输协议;它是一种客户端/服务器协议,用于向主机计算机发送和接收文件。可以使用用户名和密码对FTP进行身份验证。

某些网站允许用户使用“匿名”或“访客”作为其用户ID,并使用电子邮件地址作为其密码。公共文件通常位于特定目录中,并且很容易传输到用户的PC。

FTP是通过TCP或IP网络在计算机之间移动或传输数据的互联网标准。Abhay Bhushan编写了第一个FTP规范,于1971年4月16日作为RFC 114发布。最终引入RFC 765以取代它(1980年6月)。

最初的FTP客户端软件依赖于DOS命令提示符,该提示符具有标准化的命令和语法。从那时起,已经为操作系统开发了各种图形用户界面(GUI)客户端,使用户更容易上传和下载文件。

什么是安全文件传输协议 (SFTP)?

安全文件传输协议 (SFTP) 是一种文件传输协议,允许您通过互联网发送大型文件。它基于文件传输协议 (FTP),并包含安全外壳 (SSH) 安全组件。

安全外壳是互联网安全加密组件。互联网工程任务组 (IETF) 创建了 SSH 和 SFTP 以提高网络安全性。为了避免密码嗅探和以明文形式泄露关键信息,SFTP 通过 SSH 和加密的 FTP 指令安全地传输文件。服务器必须授权 SFTP 以防止中间人攻击。在任何需要保护敏感数据的情况下,SFTP 都很有用。

安全外壳 (SSH) 文件传输协议是此协议的另一个名称。SFTP 是一种可以使用命令行或图形用户界面 (GUI) 启动的协议。用户必须编写特定的命令行才能在第一种类型的设置中生成 SFTP 协议,这通常在 Linux 环境中完成。后一种解决方案采用了一种应用程序,该应用程序直观地为最终用户抽象了 SFTP 的操作。

SFTP 协议支持多个并发操作,它使用标准 SSH 端口 22 通过 SSH 协议运行。客户端为每个函数分配一个唯一的编号,该编号必须与服务器响应匹配。可以异步处理请求。

只有当用户使用 SSH 登录到服务器时才使用 SFTP 协议,以避免打开其他端口或维护额外的身份验证。两个通信参与者都必须通过提供用户 ID 和密码或确认 SSH 密钥来向 SFTP 服务器标识自己。两个客户端的计算机都保留 SSH 密钥的一半,而服务器加载另一半并将其与帐户关联(公钥)。只有当 SSH 密钥对匹配时,身份验证才可能。

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

FTP和SFTP的区别

下表突出显示了FTP和SFTP的主要区别。

关键
FTP
SFTP
代表
FTP代表文件传输协议。
SFTP代表安全文件传输协议。
安全通道类型
FTP不使用任何安全通道在主机之间传输文件。
SFTP使用安全通道在主机之间传输文件。
部分
FTP是TCP/IP协议的一部分。
SFTP是SSH协议的一部分。
端口
FTP的默认端口是21。
SFTP的默认端口是22。
加密
FTP在传输数据之前不使用加密。
SFTP在传输数据之前对数据进行加密。

结论

从上述讨论中,我们可以得出结论:SFTP是一种高度安全的文件传输协议(比FTP安全),因为它使用安全通道并在传输之前对数据进行加密。

更新于:2022年8月22日

604 次查看

开启你的职业生涯

完成课程获得认证

开始学习
广告