SCP 比 SFTP 更安全嗎?

SCP 比 SFTP 更安全嗎?

作者: Michael O'Dwyer
發布日期: 三月 06, 2020 0 Comments

並不會。該追求在最短的時間內完成,還是該更進一步斟酌?好,我得先談談這兩種通訊協定的起源,才能解釋我的結論。

很久以前,筆記型電腦並不像現在這樣方便攜帶 (1980 年代左右),當時,BSD Unix 推出了 RCP (Remote Copy Program,遠端複製程式)。這在當時確實很有用,但安全性不高,功能也不夠好,因此,後來結合了 SecureShell (SSH) 通訊協定的安全複製通訊協定 (SCP) 反而更受歡迎。如果是 SSH,只要使用驗證金鑰和登入資料就能進行安全的遠端登入,也能讓電腦或伺服器彼此通訊。使用 SSH 的流量採演算法加密機制,比方說進階加密標準 (Advanced Encryption Standard,AES) 或標準雜湊演算法 (Standard Hashing Algorithm,SHA-2)。SSH 成為一項網際網路標準。

顧名思義,SecureShell 檔案傳輸通訊協定 (SecureShell File Transfer Protocol,SFTP) 是從 SecureShell 演變而來,並且結合了這項技術的所有特點。另請注意,不要將 SFTP 和 FTPS 混為一談,後者採用的是 安全通訊端層 (Secure Socket Layer,SSL) 而非 SSH,是另一項截然不同的通訊協定。 

相關文章:檔案傳輸通訊協定 (FTP) 與管理式檔案傳輸 (MFT) 的比較

從 SFTP 和 SCP 的初期評估可以看出,這兩種通訊協定採用的傳輸中資料加密平台皆是 SecureShell,因此兩者一樣安全。 

2019 年開始就未必如此了 (假設當時的 SCP 用戶端全都還沒有安裝修補程式)。ZDNet 報告指出,1983 年以後的 SCP 使用案例,全都因為四大安全瑕疵而受到影響。這些瑕疵是由一名 F-Secure 研究人員發現的,所有瑕疵全都源自於之前提到過的 RCP 實作方式一開始所採用的 BSD。

請注意,要利用這類中間人 (Man-In-the Middle,MITM) 攻擊和漏洞,唯有入侵 SCP 伺服器才能辦到。當時,凡以 SCP 為預設檔案傳輸法的用戶端,全數受到影響,這類用戶端包括 OpenSSH、Putty 和 WinSCP。使用者可能會接受錯誤的主機指紋,導致惡意活動得以趁虛而入—而且從來沒有出現過使用者錯誤,對吧?

不過,後來推出的 SCP2 修正了這個問題,因此,請務必使用 SCP2,不要使用早已過時淘汰的原始 SCP。

關於 SCP

讓我用門外漢能懂的話來解釋這件事 (我不是開發人員,所以門外漢也包括我),SCP 優於 SSH,但 SFTP 是從 SCP 開發而來,所以,我個人認為,SFTP 的安全度在本質上更高。

Progress 自己的 WS_FTP Server 支援 SCP2,原因就在於剛剛提到過的:原始 SCP 有漏洞。此外,如果想使用 SCP,一定要使用 SCP 用戶端,而且最好選擇 Putty。

SCP 比較適合用於 Linux 環境,但有多少企業是以 Linux 為主?這並不重要,當 SFTP 還是主流標準時,Windows 版 SCP 用戶端出現了,而且不需要另外使用用戶端或指令碼就能整合於企業級 FTP 和 MFP 解決方案。

對我而言,這就好比買了 Microsoft Word 之後才發現其他解決方案更符合自己的需求。舉例來說,Microsoft Word 並不能與 Final Draft (寫電影劇本用的業界標準) 或 Scrivener (受歡迎的寫小說專用解決方案) 整合,也不提供這類工具所包含的功能。如果沒有非用 SCP 不可的特定用途,就用 SFTP。

SFTP 與 SCP 優劣比較

研究這篇探討「SCP 與 SFTP 優劣比較」之爭的文章時,還浮現了其他問題。大多數專家認為兩者都採用 SSH,所以一樣安全。這兩種技術都提供檔案傳輸功能,SCP 透過高延遲網路傳輸檔案的速度比 SFTP 更快,因為 SCP 是採用其本身的傳輸演算法,不會驗證每一個封包。

SCP 唯一有真憑實據的優點就在於傳輸速度。不過,SCP 包含的功能與其名稱所象徵的含義差不多:它可以傳輸檔案。

SFTP 也能傳輸檔案,還能用於管理遠端檔案、管理目錄、刪除檔案、重新命名,以及您認為 FTP 解決方案應具備的一切功能。要談讓使用者備感困擾的問題,莫過於下載或上傳過程中突然斷線。使用 SFTP 可以接續進行之前中斷的傳輸。使用 SCP 則可覆寫已經傳輸完畢的部分,或是重新開始傳輸。

如您所見,使用 SFTP 比使用 SCP 多了幾項優點。

檔案大小無關乎通訊協定問題

不論使用 SCP 或 SFTP,許多使用者都會擔心檔案大小。不過,這兩種通訊協定均未界定大小限制。這與安全性無關,但仍然值得探討—唯有在來源或目的地設限的情況下,大小限制才會產生影響。設限的原因包括但不限於:

1. 使用免費服務

免費服務供應商會對使用者設限。有些是為了方便管理,有些則是為了鼓勵使用者升級使用付費服務。這類服務包括免費的伺服器儲存空間、網站代管服務等等。

2. 使用付費服務

付費服務也分等級或層次,而且往往會採用預設限制。有些服務是可以設定的;有些則必須升級。

3. 資源管理

伺服器管理員會根據使用者人數和可用資源設限。有時候,目的地儲存空間未必夠用。

4. 32 位元障礙

如果來源或目的地是 32 位元,傳送單一檔案的大小上限是 4Gb,也就是根本不提供大檔案支援 (Large File Support,LFS)。如果安裝 32 位元的用戶端,自然也必須遵守這項規則。處理 32 位元的容器?– 情況是一樣的。

因此,如果您無法傳輸特定大小的檔案,或者發現有檔案大小限制,請深入研究其原因─問題並不在於您選擇的通訊協定。

結論

SCP 和 SFTP 之爭,重點終究在於選擇。您需要的是什麼?如果您需要更多的功能,顯然該選 SFTP。如果您想要安全地傳輸檔案,SCP 也辦得到。如果您注重的是安全性,兩種選擇都可行。

立即試用 MOVEit Transfer 免費試用版

Michael O'Dwyer

Michael O'Dwyer

An Irishman based in Hong Kong, Michael O’Dwyer is a business & technology journalist, independent consultant and writer who specializes in writing for enterprise, small business and IT audiences. With 20+ years of experience in everything from IT and electronic component-level failure analysis to process improvement and supply chains (and an in-depth knowledge of Klingon,) Michael is a sought-after writer whose quality sources, deep research and quirky sense of humor ensures he’s welcome in high-profile publications such as The Street and Fortune 100 IT portals.

評語

Comments are disabled in preview mode.
主題

Sitefinity Training and Certification Now Available.

Let our experts teach you how to use Sitefinity's best-in-class features to deliver compelling digital experiences.

Learn More
Latest Stories
in Your Inbox

Subscribe to get all the news, info and tutorials you need to build better business apps and sites