Encryption
插入 USB 磁碟時無法從 TPM 啟動
重新啟動時,插入 USB 記憶棒後,TPM 將不允許無密碼啟動伺服器。使用插入的 USB HDD 可以無密碼啟動伺服器。
我們的伺服器執行 Centos 8.3,Linux 核心版本為 4.18.0-240。TPM2 模組與 LVM 組的 LUKS 版本 1 加密一起使用,該 LVM 組由多個分區組成,包括 / /home 交換等。LUKS 標頭插槽 0 用於密碼,插槽 1 用於 TPM。
LUKS 標頭插槽 1 綁定到 PCR 值 0、1、2 和 3。因此 BIOS (0)、BIOS 配置 (1)、Options ROM (2) 和 Options ROM 配置 (3)。
從我讀到的選項 ROM 包含在 POST 啟動過程中載入的韌體。如果在簽署 TPM 時系統狀態發生任何更改,TPM 將不允許系統在沒有密碼的情況下啟動。由於 U 盤的韌體可能會在啟動過程中載入,我最初認為只綁定到 PCR 值 0 和 1,即沒有選項 ROM,可以解決問題。這沒有用。
任何關於為什麼它不能從帶有 USB 記憶棒的 TPM 引導的建議將不勝感激。
我們已經確定了在插入 USB 記憶棒並重新啟動系統後哪個 PCR 值發生了變化。通過不綁定到那個 PCR 值,我們設法在插入 USB 記憶棒的情況下啟動了 TPM。
在我們的例子中,當插入 USB 記憶棒並重新啟動系統時,PCR 1(BIOS 配置)不斷變化。
我們用來查詢 PCR 值的命令是
tpm2_pcrread
. 這列出了 sha1 和 sha256 中的 PCR 值。我們將 PCR 值的標準輸出重定向到更改前後的文件,並使用diff
命令監控每個文件之間的更改。