注意:

使用 mokutil 更新 UEFI 安全啟動的簽章金鑰

本教學課程示範如何使用機器擁有者金鑰 (MOK) 公用程式來管理 Oracle Linux 上 UEFI 安全啟動所使用的憑證。

如需 Secure Boot 及其機制的詳細背景資訊,請參閱 Oracle Linux:Working With UEFI Secure Boot

簡介

機器擁有者金鑰 (MOK) 設備用於下列作業:

在 UEFI 安全啟動金鑰資料庫內註冊金鑰的方法有兩種處理:

目標

完成本教學課程時,您應該能夠執行下列作業:

警告:使用具有 UEK R3 的 MOK 公用程式時發生問題。如果您正在使用此核心,請勿繼續本教學課程。

必要條件

安裝 mokutilpesign 套裝軟體

根據 Oracle Linux 系統,發出下列其中一個命令:

使用 UEFI 安全啟動金鑰資料庫註冊雜湊

此註冊方法包含兩個任務:

兩個作業可以使用同時使用 mokutilpesign 指令的單一指令來完成。

  1. 使用 /boot/vmlinuz-4.18.0-193.el8.x86_64 作為範例,鍵入下列指令:

    sudo mokutil --import-hash $(pesign -P -h -i /boot/vmlinuz-4.18.0-193.el8.x86_64  | cut -f 2 -d ' ')
    
  2. 輸入並確認 MOK 註冊要求的密碼。

    請為此使用任何密碼,但請注意您使用的密碼。系統重新啟動時,會提示您輸入。

  3. 重新啟動系統以完成註冊。

  4. 系統出現提示時,請輸入您在匯入雜湊時設定的密碼。

使用 UEFI 安全啟動金鑰資料庫註冊憑證

  1. 下載核心來源套裝程式。

    來源套裝軟體包含用來簽署每個核心和 shim 的憑證金鑰。核心來源套裝軟體可以是 RHCK 核心的 kernel,也可以是 Unbreakable Enterprise Kernel 的 kernel-uek

    根據 Oracle Linux 系統,發出下列其中一個命令:

    • 在 Oracle Linux 8 系統上,此指令會下載最新的 kernelkernel-uek 來源套裝軟體。

      sudo dnf download --source kernel|kernel-uek
      
    • 在 Oracle Linux 7 系統上,yumdownloader 指令可讓您下載所需的特定核心來源套裝軟體版本,例如 kernel-uek-4.14.35-1902.303.4.1.el7uekkernel-2.6.32-754.2.1.el6.x86_64

      鍵入:

      sudo yumdownloader --source <kernel-version>|<kernel-uek-version>
      
  2. 擷取來源套件以存取套件的延伸驗證 (EV) 憑證,例如:

    sudo rpm2cpio ./kernel-uek*.rpm | cpio -idmv
    
  3. 輸入並確認 MOK 註冊要求的密碼。

    請為此使用任何密碼,但請注意您使用的密碼。系統重新啟動時,會提示您輸入。

    注意:請勿匯入來源套裝軟體中包含的 CA 憑證 securebootca.cer。匯入 CA 憑證可讓任何使用相同 CA 簽署之憑證的核心載入 UEFI 安全啟動無效。

  4. 重新啟動系統以完成註冊。

  5. 系統出現提示時,請輸入您匯入憑證時所設定的密碼。

    憑證會新增至 MOK 清單,並在啟動時自動傳送至系統金鑰環,以及後續的啟動。

    使用這些步驟下載每個來源套裝軟體的多個版本、從每個憑證擷取憑證,並視需要將其匯入至 UEFI 安全啟動資料庫。若要判斷不同核心版本可能必須使用的套裝軟體版本,請參閱Use the Oracle Linux UEFI Secure Boot Update Notice

其他相關資訊

其他學習資源

探索 docs.oracle.com/learn 上的其他實驗室,或前往 Oracle Learning YouTube 通道存取更多免費學習內容。此外,請造訪 education.oracle.com/learning-explorer 以成為 Oracle Learning Explorer。

如需產品文件,請瀏覽 Oracle Help Center