FTPS(基於 SSL 的FTP)與 SFTP(SSH 文件傳輸協議)對比
SSH 文件傳輸協議 (SFTP)也稱為 通過安全套接層的文件傳輸協議 , 以及 FTPS 都是最常見的安全 FTP 通信技術,用於通過 TCP 協議將計算機文件從一個主機傳輸到另一個主機。SFTP 和 FTPS 都提供高級別文件傳輸安全保護,通過強大的演算法(如 AES 和 Triple DES)來加密傳輸的數據。
但是 SFTP 和 FTPS 之間最顯著的區別是如何驗證和管理連接。
FTPS
FTPS 是使用安全套接層(SSL)證書的 FTP 安全技術。整個安全 FTP 連接使用用戶 ID、密碼和 SSL 證書進行身份驗證。一旦建立 FTPS 連接,FTP 客戶端軟體將檢查目標 FTP 伺服器證書是否可信的。
如果證書由已知的證書頒發機構(CA)簽發,或者證書由您的合作夥伴自己簽發,並且您的信任密鑰存儲區中有其公開證書的副本,則 SSL 證書將被視為受信任的證書。FTPS 所有的用戶名和密碼信息將通過安全的 FTP 連接加密。
以下是 FTPS 的優點和缺點:
優點:
- 通信可以被人們讀取和理解
- 提供伺服器到伺服器文件傳輸的服務
- SSL/TLS 具有良好的身份驗證機制(X.509 證書功能)
- FTP 和 SSL 支持內置於許多互聯網通信框架中
缺點:
- 沒有統一的目錄列表格式
- 需要輔助數據通道(DATA),這使得難以通過防火牆使用
- 沒有定義文件名字符集(編碼)的標準
- 並非所有 FTP 伺服器都支持 SSL/TLS
- 沒有獲取和更改文件或目錄屬性的標準方式
SFTP
SFTP 或 SSH 文件傳輸協議是另一種安全的安全文件傳輸協議,設計為 SSH 擴展以提供文件傳輸功能,因此它通常僅使用 SSH 埠用於數據傳輸和控制。當 FTP 客戶端軟體連接到 SFTP 伺服器時,它會將公鑰傳輸到伺服器進行認證。如果密鑰匹配,提供任何用戶/密碼,身份驗證就會成功。
以下是 SFTP 優點和缺點:
優點:
- 只有一個連接(不需要 DATA 連接)。
- FTP 連接始終保持安全
- FTP 目錄列表是一致的和機器可讀的
- FTP 協議包括操作許可權和屬性操作,文件鎖定和更多的功能。
缺點:
- 通信是二進位的,不能「按原樣」記錄下來用於人類閱讀,
- SSH 密鑰更難以管理和驗證。
- 這些標準定義了某些可選或推薦的選項,這會導致不同供應商的不同軟體之間存在某些兼容性問題。
- 沒有伺服器到伺服器的複製和遞歸目錄刪除操作
- 在 VCL 和 .NET 框架中沒有內置的 SSH/SFTP 支持。
對比
大多數 FTP 伺服器軟體這兩種安全 FTP 技術都支持,以及強大的身份驗證選項。
但 SFTP 顯然是贏家,因為它適合防火牆。SFTP 只需要通過防火牆打開一個埠(默認為 22)。此埠將用於所有 SFTP 通信,包括初始認證、發出的任何命令以及傳輸的任何數據。
FTPS 通過嚴格安全的防火牆相對難以實現,因為 FTPS 使用多個網路埠號。每次進行文件傳輸請求(get,put)或目錄列表請求時,需要打開另一個埠號。因此,必須在您的防火牆中打開一系列埠以允許 FTPS 連接,這可能是您的網路的安全風險。
支持 FTPS 和 SFTP 的 FTP 伺服器軟體:
via: http://www.techmixer.com/ftps-sftp/
作者:Techmixer.com 譯者:Yuan0302 校對:jasminepeng
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive