在實(shí)際項(xiàng)目開(kāi)發(fā)中最常使用的文件傳輸?shù)姆绞接衒tp和sftp兩種,但是這兩個(gè)傳輸方式各有什么特點(diǎn)呢?本文接下來(lái)將討論SFTP、FTP的區(qū)別。
一、FTP協(xié)議
FTP是TCP/IP協(xié)議組中的協(xié)議之一,TP協(xié)議由兩個(gè)部分組成:
FTP服務(wù)器(用來(lái)存儲(chǔ)文件)
FTP客戶端(用戶可以使用FTP客戶端通過(guò)FTP協(xié)議訪問(wèn)位于FTP服務(wù)器上的資源)
默認(rèn)情況下FTP協(xié)議使用TCP端口中的20和21這兩個(gè)端口。21端口用于傳輸控制信息,而是否使用20作為傳輸數(shù)據(jù)的端口與FTP使用的傳輸模式有關(guān),如果采用被動(dòng)模式則具體使用哪個(gè)端口要服務(wù)器端和客戶端協(xié)商決定。FTP傳輸模式分為以下兩種:
主動(dòng)模式(Port)
被動(dòng)模式(Passive)
1. 主動(dòng)模式
FTP客戶端首先和FTP服務(wù)器的TCP21端口建立連接,通過(guò)這個(gè)通道發(fā)送命令,客戶端需要接收數(shù)據(jù)的時(shí)候在這個(gè)通道上發(fā)送PORT命令。 PORT命令包含了客戶端用什么端口接收數(shù)據(jù)。在傳送數(shù)據(jù)的時(shí)候,服務(wù)器端通過(guò)自己的TCP 20端口連接至客戶端的指定端口發(fā)送數(shù)據(jù)。
2. 被動(dòng)模式
在建立控制通道與主動(dòng)模式相似,但建立連接后是Pasv命令。FTP服務(wù)器收到Pasv命令后便隨機(jī)打開(kāi)一個(gè)高端端口(端口號(hào)大于1024)并且通知客戶端在這個(gè)端口上傳送數(shù)據(jù)的請(qǐng)求,客戶端連接FTP服務(wù)器此端口,通過(guò)三次握手建立通道,然后FTP服務(wù)器將通過(guò)這個(gè)端口進(jìn)行數(shù)據(jù)的傳送。
注意:很多防火墻在設(shè)置的時(shí)候都是不允許接受外部發(fā)起的連接的,所以許多位于防火墻后或內(nèi)網(wǎng)的FTP服務(wù)器不支持PASV模式,因?yàn)榭蛻舳藷o(wú)法穿過(guò)防火墻打開(kāi)FTP服務(wù)器的高端端口;而許多內(nèi)網(wǎng)的客戶端不能用PORT模式登陸FTP服務(wù)器,因?yàn)閺姆?wù)器的TCP 20無(wú)法和內(nèi)部網(wǎng)絡(luò)的客戶端建立一個(gè)新的連接,造成無(wú)法工作。
二、SFTP協(xié)議
SFTP是SSH File Transfer Protocol的縮寫,安全文件傳送協(xié)議。SFTP與FTP有著幾乎一樣的語(yǔ)法和功能。SFTP為SSH的其中一部分,是一種傳輸檔案至 Blogger 伺服器的安全方式。其實(shí)在SSH軟件包中,已經(jīng)包含了一個(gè)叫作SFTP的安全文件信息傳輸子系統(tǒng),SFTP本身沒(méi)有單獨(dú)的守護(hù)進(jìn)程,它必須使用sshd守護(hù)進(jìn)程(端口號(hào)默認(rèn)是22)來(lái)完成相應(yīng)的連接和答復(fù)操作,所以從某種意義上來(lái)說(shuō),SFTP并不像一個(gè)服務(wù)器程序,而更像是一個(gè)客戶端程序。
三、兩者的主要區(qū)別
鏈接方式:FTP使用TCP端口21上的控制連接建立連接。而,SFTP是在客戶端和服務(wù)器之間通過(guò)SSH協(xié)議(TCP端口22)建立的安全連接來(lái)傳輸文件。
安全性:SFTP使用加密傳輸認(rèn)證信息和傳輸?shù)臄?shù)據(jù),所以使用SFTP相對(duì)于FTP是非常安全。
效率:SFTP這種傳輸方式使用了加密解密技術(shù),所以傳輸效率比普通的FTP要低得多。
作者:聚IT 來(lái)源:今日頭條
-
FTP
+關(guān)注
關(guān)注
0文章
115瀏覽量
41097 -
ftp服務(wù)器
+關(guān)注
關(guān)注
0文章
15瀏覽量
9595
發(fā)布評(píng)論請(qǐng)先 登錄
Labview使用SFTP在WIN10系統(tǒng)正常,但是WIN11系統(tǒng)下會(huì)報(bào)錯(cuò),請(qǐng)問(wèn)有知道怎么解決的么
【AWorks試用體驗(yàn)】虛擬機(jī)-PC間 sftp 文件分享
推薦使用集串口,SSH遠(yuǎn)程登錄和FTP傳輸三合一工具M(jìn)obaXterm
在Linux上配置SFTP服務(wù)
Linux的sftp與ftp遠(yuǎn)程連接命令
請(qǐng)問(wèn)有誰(shuí)在PIC32上實(shí)現(xiàn)了FTP或SFTP客戶端嗎?
可以編程的FTP軟件:FTP Control
STP和SFTP網(wǎng)線暗藏什么玄機(jī)秘密-科蘭
STP、SFTP、UTP、FTP、ASTP雙絞線都代表什么
ftp服務(wù)器有什么作用?
CentOS環(huán)境下SFTP雙機(jī)高可用部署實(shí)錄
怎么區(qū)分網(wǎng)線STP、SFTP、UTP、FTP和ASTP

評(píng)論