檔案傳輸協議 (FTP) 和安全檔案傳輸協議 (SFTP) 的區別
FTP和SFTP都是檔案傳輸協議,用於在兩個系統之間傳輸檔案。FTP不使用任何安全通道傳輸檔案,而SFTP使用SSH協議建立控制連線。SFTP比FTP安全得多。
閱讀本文以瞭解更多關於FTP和SFTP的資訊以及它們彼此之間的區別。
什麼是檔案傳輸協議 (FTP)?
FTP代表檔案傳輸協議;它是一種客戶端/伺服器協議,用於向主機計算機發送和接收檔案。可以使用使用者名稱和密碼對FTP進行身份驗證。
某些網站允許使用者使用“匿名”或“訪客”作為其使用者ID,並使用電子郵件地址作為其密碼。公共檔案通常位於特定目錄中,並且很容易傳輸到使用者的PC。
FTP是透過TCP或IP網路在計算機之間移動或傳輸資料的網際網路標準。Abhay Bhushan編寫了第一個FTP規範,於1971年4月16日作為RFC 114釋出。最終引入RFC 765以取代它(1980年6月)。
最初的FTP客戶端軟體依賴於DOS命令提示符,該提示符具有標準化的命令和語法。從那時起,已經為作業系統開發了各種圖形使用者介面(GUI)客戶端,使使用者更容易上傳和下載檔案。
什麼是安全檔案傳輸協議 (SFTP)?
安全檔案傳輸協議 (SFTP) 是一種檔案傳輸協議,允許您透過網際網路傳送大型檔案。它基於檔案傳輸協議 (FTP),幷包含安全外殼 (SSH) 安全元件。
安全外殼是網際網路安全加密元件。網際網路工程任務組 (IETF) 建立了 SSH 和 SFTP 以提高網路安全性。為了避免密碼嗅探和以明文形式洩露關鍵資訊,SFTP 透過 SSH 和加密的 FTP 指令安全地傳輸檔案。伺服器必須授權 SFTP 以防止中間人攻擊。在任何需要保護敏感資料的情況下,SFTP 都很有用。
安全外殼 (SSH) 檔案傳輸協議是此協議的另一個名稱。SFTP 是一種可以使用命令列或圖形使用者介面 (GUI) 啟動的協議。使用者必須編寫特定的命令列才能在第一種型別的設定中生成 SFTP 協議,這通常在 Linux 環境中完成。後一種解決方案採用了一種應用程式,該應用程式直觀地為終端使用者抽象了 SFTP 的操作。
SFTP 協議支援多個併發操作,它使用標準 SSH 埠 22 透過 SSH 協議執行。客戶端為每個函式分配一個唯一的編號,該編號必須與伺服器響應匹配。可以非同步處理請求。
只有當用戶使用 SSH 登入到伺服器時才使用 SFTP 協議,以避免開啟其他埠或維護額外的身份驗證。兩個通訊參與者都必須透過提供使用者 ID 和密碼或確認 SSH 金鑰來向 SFTP 伺服器標識自己。兩個客戶端的計算機都保留 SSH 金鑰的一半,而伺服器載入另一半並將其與帳戶關聯(公鑰)。只有當 SSH 金鑰對匹配時,身份驗證才可能。
FTP和SFTP的區別
下表突出顯示了FTP和SFTP的主要區別。
關鍵 | FTP | SFTP |
---|---|---|
代表 | FTP代表檔案傳輸協議。 | SFTP代表安全檔案傳輸協議。 |
安全通道型別 | FTP不使用任何安全通道在主機之間傳輸檔案。 | SFTP使用安全通道在主機之間傳輸檔案。 |
部分 | FTP是TCP/IP協議的一部分。 | SFTP是SSH協議的一部分。 |
埠 | FTP的預設埠是21。 | SFTP的預設埠是22。 |
加密 | FTP在傳輸資料之前不使用加密。 | SFTP在傳輸資料之前對資料進行加密。 |
結論
從上述討論中,我們可以得出結論:SFTP是一種高度安全的檔案傳輸協議(比FTP安全),因為它使用安全通道並在傳輸之前對資料進行加密。