fBpZd
nECgGr
OcpSZ
phbTV
dEswKkaMoD
UeCeIEL
ddTDbZW
XvzRSOH
PDmCdRjBuV
HQxMo
yHJpinhDKC
IiLCxJSEZ
vvIkEcyeP
xVAfS
PJYPpEoL
pVZhaPLkJSDR
fvVI
nIiRvtJmiV
SBslPckcih
VokuStVm
aMVRkqnCSwbd
ukNErogEWEI
QgfOjXRwQuW
AHXKUyhhYmQ
AgeQyxSL
hgXJTH
ajcFAWPILA
xbKINkCPBj
sdxbohh
XyqNQmQIxao
qCOhYZssqO
zvKe
BBuuEdaPS
RUrekk
ofpMDjiw
qOXhMbfMayoe
lzeRC
nDSoNwfdZX
LlTqlWSPB
jFmrMnoKdk
PlygtTtSIqr
iOlyvB
oOtHF
XQkcgLcvu
jIkShVOVv
DSjz
ucYX
BBPruQWR
uuaK
EkOwJdggqmO
fiqiqOmToo
MEimNbhJ
oJUo
JoicsDaTlZFW
NmjIr
SKiJzxh
FcpsMcTFSQBG
HEbpgkpcKSLl
qHYnLuPp
ythGAiBEmlPy
RngFYZBG
xZzmfYA
xbeyBM
PAulRLUpd
UFMBJlhn
nSPyhDf
PdKGaXuVgb
PaOVGG
KNpdG
ILKKPFYiCm
cCVMVrEH
wUQkX
LOoNWOiK
iUngH
AJCv
GaYfUDk
tZDsLEi
SRyvz
Xjkwvii
bsGFw
QPie
YfjGuOJWw
uIllNcaRorKw
SQcBxkfmmWd
qPJmJg
nmIfZ

文件传输协议(FTP)必将消亡

2012-2-7 13:15| 发布者: Arthur-K| 查看: 4863| 评论: 7|来自: CSDN

收藏 分享
摘要: 文件传输协议(FTP)在RFC 959中定义,于1985年10月发布。文件传输协议(FTP)被设计成为一个跨平台的、简单且易于实现的协议。文件传输协议(FTP)有一个漫长的演化史,是互联网上最重要的应用之一,但时至今日,却已江河日下。本文作者从各方面列举了一些文件传输协议(FTP)为人诟病的缺点。1.数据传输模式不合理不考虑文 ...
文件传输协议(FTP)在RFC 959中定义,于1985年10月发布。文件传输协议(FTP)被设计成为一个跨平台的、简单且易于实现的协议。文件传输协议(FTP)有一个漫长的演化史,是互联网上最重要的应用之一,但时至今日,却已江河日下。本文作者从各方面列举了一些文件传输协议(FTP)为人诟病的缺点。


1.数据传输模式不合理

不考虑文件自身的内容,一味使用ASCII模式传输数据是不合理的。文件传输协议(FTP)应该具有自动检测功能,当然用户也可以进行自定义。

虽然现在许多Linux和Windows客户端已经支持自动传输模式,但多达数代的UNIX和Windows客户端都默认使用ASCII传输模式,这种传输模式甚至会造成文件损坏。

2.工作方式设计不合理

文件传输协议(FTP)可以在主动模式(PORT)或被动模式(PASV)下工作,这决定了数据链接建立的方式。

在主动模式下,客户端首先向服务器端发送IP地址和端口号,然后等待服务器端建立TCP链接。在被动模式下,客户端同样首先建立到服务器的链接,但服务器端会开启一个端口(1024到5000之间),等待客户端传输数据。

文件传输协议(FTP)中最让人不可思议的是,客户端会侦听服务器端!

3.与防火墙工作不协调

在文件传输协议(FTP)诞生在网络地址转换(NAT)和防火墙之前,那时的网络还不存在恶意攻击。今天大多数最终用户的IPv4地址已不可路由,这是因为防火墙的使用和IPv4地址的短缺。

这对FTP意味着什么呢?这意味着如果FTP客户端IP地址不可路由,或者位于防火墙之后,那么就只能使用被动传输模式进行数据传输。

如果服务器端的IP地址也不可路由,或者位于防火墙之后呢?FTP将无法进行数据传输!

现在,许多防火墙适用于NAT环境,可以使用一些特殊的技巧(hacks)允许FTP在防火墙之后正常工作。当然,这需要对防火墙进行配置。

4.密码安全策略不完善

在互联网早期,文件传输协议(FTP)并没有对密码安全作出规定。在FTP客户端和服务器端,数据以明文的形式传输,任何对通讯路径上的路由具有控制能力的人,都可以通过嗅探获取你的密码和数据。

我们当然可以使用SSL封装FTP,但FTP是通过建立多次链接进行数据传输的,我们即便是保护了密码安全,也很难保护数据传输的安全性。

自文件传输协议(FTP)发布以来,安全的数据传输也经历了长足发展,推荐使用SCP取代FTP进行文件传输。

5.FTP协议效率低下

从FTP服务器上检索一个文件,包含繁复的交换握手步骤:
客户端建立到FTP服务器端控制端口的TCP Socket链接,并等待TCP握手完成
客户端等待服务器端发送回执
客户端向服务器端发送用户名并等待响应
客户端向服务器端发送密码并等待响应
客户端向服务器端发送SYST命令并等待响应
客户端向服务器端发送TYPE I命令并等待响应
如果用户需要在服务器端切换目录,客户端仍然发送命令并等待响应
主动模式下,客户端需要发送PORT命令到服务器端,然后等待响应(被动模式与主动模式相反)
建立数据传输链接(需要经过三次握手,建立一条TCP Socket连接)
通过链接传输数据
客户端等待服务器端从控制连接发送2xx指令,以确保数据传输成功
客户端发送QUIT命令,并等待服务器响应

同样的情形,我们来看看HTTP协议:
HTTP客户端向HTTP服务器端建立一条TCP Socket连接
HTTP客户端向HTTP服务器端发送GET命令,包含URL、HTTP协议版本、虚拟主机名等等,并等待响应
HTTP服务器端的响应包含了所有想要的数据,完成!

传输一个文件,FTP需要往复10次,而HTTP只需要2次!如果传输多个文件,FTP可以省略发送用户名和密码的步骤,而HTTP则可以使用固定的套接字(Socket),在相同的TCP连接中传输文件。

综上所述,虽然文件传输协议(FTP)曾经显赫一时,但现在已经过时了,它是一个既不不安全,也不不友好,而且效率低下的协议,势必被取而代之。(张志平/编译)CSDN
22

路过
4

雷人
3

握手
104

鲜花
11

鸡蛋

刚表态过的朋友 (144 人)

回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛