做者:又拍云
连接: https://my.oschina.net/upyun/...
FTP 即 文件传输协议(英语:File Transfer Protocol 的缩写)是一个用于计算机网络上在客户端和服务器之间进行文件传输的应用层协议。完整的 FTP 是由 FTP 服务器 和 FTP 客户端组成的,客户端能够将本地的文件经过 FTP 协议上传到服务器,也能够将服务器的文件下载到本地。它是当今使用的最古老的文件传输协议之一,是一种很是便捷的移动文件的方式。安全
FTP 链接须要 FTP 服务器和客户端两方在网络上创建通讯。创建 FTP 链接时会有两个不一样的通讯通道。一个被称为命令通道,它的做用是发出和响应指令。另外一个为数据通道,用于客户端和服务器端进行数据交互。服务器
使用 FTP 传输文件时,用户须要经过向 FTP 服务器提供凭据来得到文件传输许可。固然某些公共 FTP 服务器可能不须要凭据便可访问其文件,可是没法保证数据传输的安全性,任何未加密公共网络上的数据发送都是很是危险的,因此为了保护传输数据的安全,由 FTP 衍生而出的就是下面的两种协议:FTPS 与 SFTP。网络
接下来二狗子查询了一下,发现 FPTS 有 FTPS 隐式 SSL 和 FTPS 显示 SSL 两种模式,二者都是用 SSL 加密。那么二者有什么区别呢?并发
给你们简单快速的总结一下。当启用隐式模式时,FTP 的默认端口就被改成 TCP/990,服务器自动创建安全链接,而且要求客户端也必须支持安全链接模式也就是使用 SSL 进行链接。当启用显式模式时,与 FTP 链接方式和默认端口同样,可是须要以命令 AUTH SSL/TLS 类型的命令进行激活安全链接后才能正常传输数据。app
最后你们来一块儿看看 SFTP,SFTP 是 Secure File Transfer Protocol 的缩写,也叫做安全文件传送协议。工具
若是说 FTPS 是在 FTP 协议上增长了一层 SSL ,那么 SFTP 就是是基于网络协议SSH(安全外壳)的协议与前面所说的 FTP 彻底不一样。SFTP 不使用单独的命令通道和数据通道,而是数据和命令都会经过单个链接以特殊格式的数据包进行传输。加密
SFTP 提供了两种验证链接的方法。spa
了解了这几个协议以后,二狗子使用 FTP 客户端工具就更加顺手了,他能够根据本身的需求更改协议以及加密方式,而不用为不懂某个设置而烦恼。.net
可是,新的疑问又出现了,二狗子看到这里的传输设置中的传输模式,有主动和被动之分,这又是什么意思呢。不懂就问的他又打开了 Google…计算机网络
通常 FTP 的默认模式就是主动模式,也称为 port 模式。
它是经过两个步骤来进行工做的:
在传输方式栏,你还能够手动调整为被动传输模式,在该模式下用户端进行文件传输时,会先经过随机端口 A 链接到服务器上的端口 21,并发出 PASV 命令创建命令通道,告诉服务端此次是被动模式链接。以后服务器会打开一个随机端口用于数据传输,而客户端经过与发出命令的端口不一样的随机端口 B 创建数据通道,从而进行文件传输。
被动模式与主动模式不一样的地方就是客户端启动数据链接。在主动模式下,客户端在命令通道上创建链接后,服务器将启动与客户端的数据链接。而在被动模式下,创建命令通道后,由客户端启动与服务器的数据链接。
由于这个区别,能够得出二者的优点和缺陷。好比主动模式有利于管理 FTP 服务端,由于只须要打开 21 端口的“准入”、20 端口的“准出” 便可,可是因为服务器链接到客户端的端口随机,因此客户端有可能会触发防火墙,甚至直接被防火墙拦截掉。反之被动模式则有利于管理客户端。
没想到一个看似简单的存储工具竟然还有着这么多的分类和区别,不一样的模式不一样的方式均可以对应不一样的需求,看来之后在使用工具的时候仍是能够多少了解一点相关知识,能让工具用起来更顺手更舒心~