FTP、FTPS和SFTP简介应用层协议。完整的FTP由FTP服务器和FTP客户端组成。客户端可以通过FTP协议将本地文件上传到服务器,也可以将服务器文件下载到本地。它是当今使用的最古老的文件传输协议之一,是一种非常方便的文件移动方式。FTP的工作原理FTP连接需要两方(FTP服务器和客户端)在网络上建立通信。建立FTP连接时有两种不同的通信通道。一种称为命令通道,其作用是发布和响应命令。另一个是数据通道,用于客户端和服务器之间的数据交互。使用FTP传输文件时,用户需要通过向FTP服务器提供凭据来获得文件传输权限。当然,一些公共FTP服务器可能不需要凭据来访问他们的文件,但是数据传输的安全性得不到保证,在未加密的公共网络上传输任何数据都是非常危险的,所以为了保护传输数据的安全,FTP衍生出以下两种协议:FTPS和SFTP。接下来,二狗子查询了FTPS,发现FPTS有两种模式:FTPSimplicitSSL和FTPSdisplaySSL,两者都是用SSL加密的。那么两者有什么区别呢?FTPSImplicitSSL:这种模式通常运行在990端口。在这种模式下,所有的数据交换都需要在客户端和服务器之间建立一个SSL会话,服务器会拒绝任何不使用SSL的连接尝试。FTPSExplicitSSL:表示SSL下的服务器可以同时支持FTP和FTPS会话。开始会话前,客户端需要与FTP服务器建立未加密连接,并在发送用户证书前发送AUTHTLS或AUTHSSL命令请求服务器将命令通道切换到SSL加密通道,然后发送将用户证书发送到FTP服务器,从而确保会话期间的任何命令都通过SSL通道自动加密。让我给你一个快速的总结。启用隐式模式后,FTP的默认端口改为TCP/990,服务器自动建立安全连接,客户端也必须支持安全连接模式,即使用SSL连接。启用显式模式时,与FTP连接方式和默认端口相同,但需要用命令AUTHSSL/TLS类型激活安全连接才能正常传输数据。SFTP最后,让我们看一下SFTP。SFTP是SecureFileTransferProtocol的缩写,又称安全文件传输协议。如果说FTPS是在FTP协议的基础上加了一层SSL,那么SFTP就是一种基于网络协议SSH(SecureShell)的协议,与前面提到的FTP完全不同。SFTP不使用单独的命令和数据通道,但数据和命令都以特殊格式的数据包通过单个连接传输。SFTP提供两种验证连接的方法。与FTP一样,您只需验证您的用户ID和密码即可连接。然而,与FTP不同的是,这些凭据是加密的,这是SFTP的主要安全优势。除了密码之外,还可以通过SSH密钥进行身份验证并通过SFTP协议进行连接。了解了这些协议后,二狗子就可以更加顺畅地使用FTP客户端工具了。他可以根据自己的需要更改协议和加密方式,而不用担心不知道某个设置。然而,新的问题又出现了。二狗子看到这里传输设置里面的传输模式分为主动和被动。这是什么意思?不懂就再问,打开谷歌...FTP软件主动模式和被动模式的区别主动模式一般FTP默认的模式是主动模式,也叫端口模式。它通过两个步骤工作:首先,客户端的一个随机端口与服务器上的FTP端口21建立命令通道,客户端发送一个PORT命令,指定服务器连接到客户端的其中一个端口,并建立一个数据通道。然后服务器从端口20连接到为数据通道指定的客户端端口。一旦建立连接,文件传输就可以通过这些客户端和服务器端口进行。被动模式在传输方式栏中,您也可以手动调整为被动传输模式。在这种模式下,客户端在进行文件传输时,会先通过随机端口A连接到服务器的21端口,发出PASV命令建立命令通道。告诉服务器这是一个被动模式连接。之后服务端会打开一个随机端口进行数据传输,客户端会通过一个与发出命令的端口不同的随机端口B建立数据通道,进行文件传输。被动模式和主动模式的区别在于客户端发起数据连接。在主动模式下,客户端在命令通道上建立连接后,服务器会发起与客户端的数据连接。在被动模式下,命令通道建立后,客户端向服务器发起数据连接。由于这种差异,可以得出两者的优缺点。例如,主动模式有利于管理FTP服务器,因为它只需要打开21端口的“准入”和20端口的“允许”,但由于服务器连接到客户端的随机端口,客户端可能会触发防火墙,甚至直接被防火墙拦截。相反,被动模式有利于管理客户端。没想到,一个看似简单的收纳工具,却有着如此多的分类和差异。不同的模式、不同的方法可以对应不同的需求。看来以后在使用工具的时候,还是可以多学一点相关的知识,让工具用起来更简单,用起来更舒服~
