术语知识

术语知识

线程安全

TCP、UDP

TODO 后续术语单独成文,作为引用存放此处

FTP、FTPS、SFTP

  • FTP、FTPS、SFTP
    • FTP 工作原理
      • 主动模式
      • 被动模式
    • FTPS
      • 隐式 FTPS
      • 显式 FTPS
    • SFTP

FTP 简介:

FTP 即 文件传输协议(英语:File Transfer Protocol 的缩写)是一个用于计算机网络上在客户端和服务器之间进行文件传输的应用层协议。完整的 FTP 是由 FTP 服务器 和 FTP 客户端组成的,客户端可以将本地的文件通过 FTP 协议上传到服务器,也可以将服务器的文件下载到本地。它是当今使用的最古老的文件传输协议之一,是一种非常便捷的移动文件的方式。

FTP 的工作原理:

FTP 连接需要 FTP 服务器和客户端两方在网络上建立通信。建立 FTP 连接时会有两个不同的通信通道。一个被称为命令通道,它的作用是发出和响应指令。另一个为数据通道,用于客户端和服务器端进行数据交互。
使用 FTP 传输文件时,用户需要通过向 FTP 服务器提供凭据来获得文件传输许可。当然某些公共 FTP 服务器可能不需要凭据即可访问其文件,但是无法保证数据传输的安全性,任何未加密公共网络上的数据发送都是非常危险的,所以为了保护传输数据的安全,由 FTP 衍生而出的就是下面的两种协议:FTPS 与 SFTP。

FTPS 隐式 显式:

FTPS 有 FTPS 隐式 SSL 和 FTPS 显示 SSL 两种模式,两者都是用 SSL 加密。那么两者有什么区别呢?

  • FTPS 隐式 SSL:该模式通常在端口 990 上运行。在这个模式下全部数据的交换都需要在客户端和服务器之间建立 SSL 会话,并且服务器会拒绝任何不使用 SSL 进行的连接尝试。
  • FTPS 显式 SSL:显示 SSL 下服务器可以同时支持 FTP 和 FTPS 会话。开始会话前客户端需要先建立与 FTP 服务器的未加密连接,并在发送用户凭证前先发送 AUTH TLS 或 AUTH SSL 命令来请求服务器将命令通道切换到 SSL 加密通道,成功建立通道后再将用户凭证发送到 FTP 服务器,从而保证在会话期间的任何命令都可以通过 SSL 通道自动加密。

当启用隐式模式时,FTP 的默认端口就被改为 TCP/990,服务器自动建立安全连接,并且要求客户端也必须支持安全连接模式也就是使用 SSL 进行连接。当启用显式模式时,与 FTP 连接方式和默认端口一样,但是需要以命令 AUTH SSL/TLS 类型的命令进行激活安全连接后才能正常传输数据。

SFTP:

SFTP 是 Secure File Transfer Protocol 的缩写,也叫作安全文件传送协议。
如果说 FTPS 是在 FTP 协议上增加了一层 SSL ,那么 SFTP 就是是基于网络协议 SSH(安全外壳)的协议与前面所说的 FTP 完全不同。SFTP 不使用单独的命令通道和数据通道,而是数据和命令都会通过单个连接以特殊格式的数据包进行传输。

SFTP 提供了两种验证连接的方法。

  • 与 FTP 一样,连接时只需要验证用户 ID 和密码就可以了。但是,与 FTP 不同的是,这些凭据是加密的,这是 SFTP 最主要的安全优势。
  • 除密码外,还可以通过 SSH 密钥来验证并通过 SFTP 协议连接。

FTP 软件的主动模式和被动模式的区别:

主动模式

一般 FTP 的默认模式就是主动模式,也称为 port 模式。
它是通过两个步骤来进行工作的:

  • 首先客户端上的随机端口与服务器上的 FTP 端口 21 建立命令通道,客户端发送 PORT 命令,指定服务器与客户端其中一个端口连接,并建立数据通道。
  • 然后服务器从端口 20 连接到为数据通道指定的客户端端口。建立连接后,即可通过这些客户端和服务器端口进行文件传输。

被动模式

在传输方式栏,你还可以手动调整为被动传输模式,在该模式下用户端进行文件传输时,会先通过随机端口 A 连接到服务器上的端口 21,并发出 PASV 命令建立命令通道,告诉服务端这次是被动模式连接。之后服务器会打开一个随机端口用于数据传输,而客户端通过与发出命令的端口不同的随机端口 B 建立数据通道,从而进行文件传输。

被动模式与主动模式不同的地方就是客户端启动数据连接。在主动模式下,客户端在命令通道上建立连接后,服务器将启动与客户端的数据连接。而在被动模式下,建立命令通道后,由客户端启动与服务器的数据连接。

因为这个区别,可以得出两者的优势和缺陷。比如主动模式有利于管理 FTP 服务端,因为只需要打开 21 端口的“准入”、20 端口的“准出” 即可,但是由于服务器连接到客户端的端口随机,所以客户端有可能会触发防火墙,甚至直接被防火墙拦截掉。反之被动模式则有利于管理客户端。

浅谈 FTP、FTPS 与 SFTP

术语简介

术语简称英文名称术语全称
IDEintegrated-development-environment集成开发环境
OOPobject-oriented-programming面向对象编程
OSSopen-source-software开源软件
APIapplication-programming-interface应用程序接口
SDKsoftware-development-kit软件开发包
ECMAEuropean-computer-manufactures-association欧洲计算机制造商协会
IIFEimmediately-invoked-function-expression立即执行函数表达式
ASPActive Server Page动态服务器主页
ISPInternet Service Provider因特网服务提供商
URLUniform Resource Locator统一资源定位系统
BBSBulletin Board Service公告牌服务
FTPFile Transfer Protocol文件传输协议
HTMLHyperText Markup Language超文本标记语言
HTTPHyperText Transfer Protocol超文本传输协议
XMLExtensible Markup Language可扩展标记语言
XSLExtensible Style Sheet Language可扩展设计语言
MVCModel View Controller编程模式模型,视图,控制器
JSONJavaScript Object NotationJavaScript 对象表示法
AJAXAsynchronous JavaScript and XML异步的 JavaScript 和 XMLPHP
PHPPersonal Home Page超文本预处理器,已经正式更名为 “PHP: Hypertext Preprocessor”
SSLsecure-sockets-layer安全套接层
TLStransport-layer-security安全传输层协议
CURDcreate-update-retrieve-delete创建,更新,读取,删除
CDNcontent-delivery-network内容分发网络
DDOSdistributed-denial-of-servuce分布式拒绝服务攻击
DNSdomain-name-system域名系统
QPSquery-per-second每秒查询率
POpurchase-order订单
OAoffice-automatic办公自动化
SEOsearch-engine-optimization搜索引擎优化
SEMsearch-engine-marketing搜索引擎营销
DOSdisk-operating-system磁盘操作系统
SSDsolid-state-drives固态硬盘
VPNvirtual-private-network虚拟专用网络
POLAprinciple of least authority最低授权原则
DDLData Definition Language数据库模式定义语言
TFSTaobao File System分布式文件系统
UMLUnified Modeling Language统一建模语言或标准建模语言
TCP/IPTransmission Control Protocol/Internet Protocol传输控制协议/因特网互联协议,又名网络通讯协议
SOAService Oriented Architecture面向服务的架构
ESBEnterprise Service Bus企业服务总线
CRMCustomer Relationship Management客户关系管理
ERPEnterprise Resourse Planning企业资源规划系统
MISManagement Information System企业信息管理系统
CMSContent Management System网站内容管理系统
SCMSupply Chain Management供应链管理系统
AIArtificial Intelligence人工智能
BIBusiness Intelligence商务智能
PRPageRank网页级别
PVpage view页面浏览量
ECElectronic Commerce电子商务
B2CBusiness to Customer商对客电子商务模式
B2BBusiness to Business商对商电子商务模式
C2Ccustomer to customer个人与个人之间的电子商务
B2B2Cbusiness to business to Customer电子购物平台模式
O2OOnline To Offline在线离线/线上到线下
P2PPeer to Peer对等网络
B2Gbusiness-to-government商家到政府
O2C-AOffice to Customer企业对客户进行专人定制服务
O2C-BOnline to Configuration在线配置型电子商务模式
O2C-COldpainters to Customization品牌和服务叠加个性化定制