要找企業(yè)做網(wǎng)站應該注意什么網(wǎng)站優(yōu)化外包推薦
什么是SFTP?
SFTP是一種安全的文件傳輸協(xié)議,一種通過網(wǎng)絡傳輸文件的安全方法;它確保使用私有和安全的數(shù)據(jù)流來安全地傳輸數(shù)據(jù)。
SFTP要求客戶端用戶必須由服務器進行身份驗證,并且數(shù)據(jù)傳輸必須通過安全通道(SSH)進行,即不傳輸明文密碼或文件數(shù)據(jù)。它允許對遠程文件執(zhí)行各種操作,有點像遠程文件系統(tǒng)協(xié)議。SFTP允許從暫停傳輸,目錄列表和遠程文件刪除等操作中恢復。
SFTP和FTP之間的區(qū)別
SFTP和FTP非常相似,都支持批量傳輸(一次傳輸多個文件),文件夾/目錄導航,文件移動,文件夾/目錄創(chuàng)建,文件刪除等。但還是存在著差異,下面我們來看看SFTP和FTP之間的區(qū)別。
1、安全通道
FTP 不提供任何安全通道來在主機之間傳輸文件;而SFTP協(xié)議提供了一個安全通道,用于在網(wǎng)絡上的主機之間傳輸文件。
2、使用的協(xié)議
FTP使用TCP / IP協(xié)議。而,SFTP是SSH協(xié)議的一部分,它是一種遠程登錄信息。
3、鏈接方式
FTP使用TCP端口21上的控制連接建立連接。而,SFTP是在客戶端和服務器之間通過SSH協(xié)議(TCP端口22)建立的安全連接來傳輸文件。
4、安全性
FTP密碼和數(shù)據(jù)以純文本格式發(fā)送,大多數(shù)情況下是不加密的,安全性不高。而,SFTP會在發(fā)送之前加密數(shù)據(jù),二進制的形式傳遞,是無法“按原樣”閱讀的,安全性較高。
在實際項目開發(fā)中最常使用的文件傳輸?shù)姆绞接衒tp和sftp兩種,但是這兩個傳輸方式各有什么特點呢?本文接下來將討論SFTP、FTP的區(qū)別。
一、FTP協(xié)議
FTP是TCP/IP協(xié)議組中的協(xié)議之一,TP協(xié)議由兩個部分組成:
FTP服務器(用來存儲文件)
FTP客戶端(用戶可以使用FTP客戶端通過FTP協(xié)議訪問位于FTP服務器上的資源)
默認情況下FTP協(xié)議使用TCP端口中的20和21這兩個端口。21端口用于傳輸控制信息,而是否使用20作為傳輸數(shù)據(jù)的端口與FTP使用的傳輸模式有關,如果采用被動模式則具體使用哪個端口要服務器端和客戶端協(xié)商決定。FTP傳輸模式分為以下兩種:
主動模式(Port)
被動模式(Passive)
1. 主動模式
FTP客戶端首先和FTP服務器的TCP21端口建立連接,通過這個通道發(fā)送命令,客戶端需要接收數(shù)據(jù)的時候在這個通道上發(fā)送PORT命令。 PORT命令包含了客戶端用什么端口接收數(shù)據(jù)。在傳送數(shù)據(jù)的時候,服務器端通過自己的TCP 20端口連接至客戶端的指定端口發(fā)送數(shù)據(jù)。
2. 被動模式
在建立控制通道與主動模式相似,但建立連接后是Pasv命令。FTP服務器收到Pasv命令后便隨機打開一個高端端口(端口號大于1024)并且通知客戶端在這個端口上傳送數(shù)據(jù)的請求,客戶端連接FTP服務器此端口,通過三次握手建立通道,然后FTP服務器將通過這個端口進行數(shù)據(jù)的傳送。
注意:很多防火墻在設置的時候都是不允許接受外部發(fā)起的連接的,所以許多位于防火墻后或內(nèi)網(wǎng)的FTP服務器不支持PASV模式,因為客戶端無法穿過防火墻打開FTP服務器的高端端口;而許多內(nèi)網(wǎng)的客戶端不能用PORT模式登陸FTP服務器,因為從服務器的TCP 20無法和內(nèi)部網(wǎng)絡的客戶端建立一個新的連接,造成無法工作。
二、SFTP協(xié)議
SFTP是SSH File Transfer Protocol的縮寫,安全文件傳送協(xié)議。SFTP與FTP有著幾乎一樣的語法和功能。SFTP為SSH的其中一部分,是一種傳輸檔案至 Blogger 伺服器的安全方式。其實在SSH軟件包中,已經(jīng)包含了一個叫作SFTP的安全文件信息傳輸子系統(tǒng),SFTP本身沒有單獨的守護進程,它必須使用sshd守護進程(端口號默認是22)來完成相應的連接和答復操作,所以從某種意義上來說,SFTP并不像一個服務器程序,而更像是一個客戶端程序。
三、兩者的主要區(qū)別
FTP與SFTP兩者有什么區(qū)別
鏈接方式:FTP使用TCP端口21上的控制連接建立連接。而,SFTP是在客戶端和服務器之間通過SSH協(xié)議(TCP端口22)建立的安全連接來傳輸文件。
安全性:SFTP使用加密傳輸認證信息和傳輸?shù)臄?shù)據(jù),所以使用SFTP相對于FTP是非常安全。
效率:SFTP這種傳輸方式使用了加密解密技術,所以傳輸效率比普通的FTP要低得多。
SFTP的概念
sftp是Secure File Transfer Protocol的縮寫,安全文件傳送協(xié)議??梢詾閭鬏斘募峁┮环N安全的網(wǎng)絡的加密方法。sftp 與 ftp 有著幾乎一樣的語法和功能。SFTP 為 SSH的其中一部分,是一種傳輸檔案至 Blogger 伺服器的安全方式。其實在SSH軟件包中,已經(jīng)包含了一個叫作SFTP(Secure File Transfer Protocol)的安全文件信息傳輸子系統(tǒng),SFTP本身沒有單獨的守護進程,它必須使用sshd守護進程(端口號默認是22)來完成相應的連接和答復操作,所以從某種意義上來說,SFTP并不像一個服務器程序,而更像是一個客戶端程序。SFTP同樣是使用加密傳輸認證信息和傳輸?shù)臄?shù)據(jù),所以,使用SFTP是非常安全的。但是,由于這種傳輸方式使用了加密/解密技術,所以傳輸效率比普通的FTP要低得多,如果您對網(wǎng)絡安全性要求更高時,可以使用SFTP代替FTP。
這里我們用sftp來對遠程服務器和本地電腦上文件進行上傳,下載操作。
用法:
連接遠程服務器:
sftp username@ip
回車之后輸入服務器密碼即可連接成功。
將文件上傳到服務器上:
將服務器上的文件下載到本地:
get [服務器上文件存儲的位置] [本地要存儲的位置]