![在 SSH 之前保持磁碟加密](https://rvso.com/image/1000384/%E5%9C%A8%20SSH%20%E4%B9%8B%E5%89%8D%E4%BF%9D%E6%8C%81%E7%A3%81%E7%A2%9F%E5%8A%A0%E5%AF%86.png)
我想知道在建立 SSH 連線之前是否可以在我的硬碟上使用全碟加密。硬碟上的所有進程都將在加密下運行,即伺服器仍然會透過適當的管道(例如網站)輸出正常的未加密內容。
我想阻止像亞馬遜這樣的公司或其他較小的公司透過實體分析硬碟來存取我的資料 - 不是遠端攻擊者,而是擁有磁碟的攻擊者。即使這意味著要設定個人 ubuntu 伺服器,我想知道這是否可能?
答案1
你所問的是不可能的。若要透過 SSH 進入系統,系統必須已啟動,並且要啟動,系統必須已解密。對於任何加密設備都是如此。手機、電腦、平板電腦,沒有差別。如果設備已加密,您必須在啟動時輸入金鑰(通常是密碼、PIN 碼或圖案)來解密設備,以便設備可以啟動。一旦您輸入解密密碼,您的資料就處於解密狀態。應該假設此時任何有權存取系統的人都可以存取解密狀態的資料。
答案2
在 initramfs 中可以預先有一個 ssh 伺服器,但這一小部分不會被加密。你的想法沒有錯,畢竟有些軟體會提示你輸入解密金鑰。專案 dropbear-initramfs 可以在安裝加密根檔案系統進行引導之前提供 ssh。我不知道開箱即用的解決方案,但 safeboot.dev 相當接近,所以如果你熟練,也許你可以在金屬上使用它。
您防止亞馬遜或其他雲端供應商窺探的用例並不會因此而真正停止。硬體已經存在,但軟體正在迎頭趕上,以提供安全的飛地,由於 CPU 和同態加密的進步,您的雲端供應商無法看到您的靜態數據、內存數據,甚至是處理中的數據。請參閱 Golem 項目。目前這還不可能,但很快就會實現:「硬碟上的所有進程都將在加密下運行」但是,從技術上講,如果您能弄清楚如何實現它,您可以在解密根檔案系統之前執行dropbear SSH。