FTP 和 SFTP 有什么区别?

首先,让我们了解什么是文件传输协议 (FTP)。

FTP

FTP 代表文件传输协议。FTP 是 TCP/IP 支持的标准 Internet 协议,用于将记录从一台主机共享到另一台主机。FTP 需要 TCP 作为传输协议来帮助建立可靠的端到端连接,并在管理数据传输时执行两种类型的连接。

FTP 客户端向众所周知的端口 21(客户端的端口通常是短暂的)发起第一个连接,称为控制连接。FTP 服务器正是在此元素上侦听它并建立新连接。控制连接表示客户端用户用来激活服务器、操作文件和删除会话的所有控制命令。

FTP 使用的第二个连接被描述为数据连接。通常,数据连接是在服务器20端口上创建的。它基于数据连接是如何创建的;客户端和服务器都可以使用临时端口。

当用户涉及需要数据传输的命令(包括检索文档或查看可访问文件列表的请求)时,FTP 会打开数据连接。因此,整个 FTP 会话可以在没有打开数据连接的情况下打开和关闭。

换句话说,当客户端开始 FTP 会话时,控制连接会在控制连接打开的同时打开,如果共享多个文件,则数据连接可以多次打开和关闭。

SFTP

SFTP 也称为 SSH FTP。它可以在传输过程中对控制和数据进行加密。所有数据和凭据在通过网络移动时都经过加密。SSH 是一种协议,它使我们能够远程链接到其他系统并从命令行执行命令。

生成 SFTP 以通过安全通道 (SSH) 共享文件。SFTP 使用 SFTP 创建数据传输比其他安全 FTP 连接更快。

差异

FTP 和 SFTP 之间的主要区别如下 -

FTPSSFTP
FTPS stands for Secure File Transfer Protocol Secure.SFTP 代表安全文件传输协议。
FTPS establishes a connection via SSL/TLS.SFTPS 通过 SSH 通道建立连接。
FTPS will allow you to create custom commands.SFTP 可以更好地控制文件权限、所有权和属性。
FTPS supports EBCDIC transfers.SFTP 允许创建符号链接
FTPS allows the use of Trusted x.509 certificates.SFTP 服务器只需要一个单独的端口就可以在防火墙上访问。