2.2.3.2 mokutilの使用によるセキュア・ブートのキーの削除

ベア・メタル・データベース・サーバーおよびKVMホストでは、Machine Owner Key (MOK)ユーティリティ(mokutil)を使用して、セキュア・ブートに関連付けられたキーを削除できます。

mokutilコマンドは、rootユーザーとして実行する必要があります。

mokutil --helpを実行すると、mokutilコマンドに関するその他の詳細を表示できます。

警告:

システムに含まれるオラクル社提供のキーおよび証明書を変更または削除しないようにしてください。オラクル社提供のキーを識別するには、対応する証明書を調べ、サブジェクト情報でOracle (O=Oracle America Inc.)を検索します。次に例を示します:

# mokutil --list-enrolled
[key 1]
SHA1 Fingerprint: 5f:f4:35:5a:49:ec:8d:f1:56:d1:ee:9b:ac:f6:19:54:08:77:d3:59
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            21:b3:c1:01:19:dc:af:44:43:15:8b:0f:33:6b:18:be
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: C=US, O=Symantec Corporation, OU=Symantec Trust Network, 
            CN=Symantec Class 3 Extended Validation Code Signing CA - G2
        Validity
            Not Before: Jun 30 00:00:00 2020 GMT
            Not After : Jul  1 23:59:59 2021 GMT
        Subject: jurisdictionC=US/jurisdictionST=Delaware/businessCategory=Private Organization/serialNumber=2101822, 
            C=US/postalCode=94065, ST=California, L=Redwood City/street=500 Oracle Parkway, 
            O=Oracle America Inc., OU=Winqual, CN=Oracle America Inc.
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (2048 bit)
...
  1. 次のコマンドからの出力を調べて、削除するキーを特定します:
    # mokutil --list-enrolled
  2. 次のコマンドを使用してキー証明書をエクスポートします:
    # mokutil --export

    このコマンドは、登録されたキーごとにDER形式のX509証明書ファイルを出力します。ファイルを確認し、削除する証明書を見つけます。

  3. 削除するキーに関連付けられた証明書を削除します。

    次に例を示します:

    # mokutil --delete my_certificate.der

    プロンプトが表示されたら、MOK管理パスワードを指定します。システムの再起動後にMOK削除を完了する必要があるため、パスワードを覚えておいてください。

    ノート:

    • 必要に応じて、mokutilコマンドを使用し、DER形式のX509証明書ファイルのリストを指定することで、一度に複数の証明書を削除できます。次に例を示します:

      # mokutil --delete my_certificate.der my_certificate2.der my_certificate3.der

      複数の証明書を削除すると、キーは後でMOK管理インタフェースでKey 0Key 1Key 2などとして識別されます。

    • 削除対象としてマークした証明書に問題が見つかった場合は、次を実行して、UEFIセキュア・ブート・キー・データベースからキーが削除される前であればいつでも、削除を取り消すことができます:

      # mokutil --revoke-delete
  4. 識別目的でキーおよび関連する証明書に関する詳細を次の各ステップで記録します。

    次のコマンドからの出力を記録します:

    # mokutil --list-delete
  5. システム・コンソールからシステムを再起動します。

    物理サーバーでは、Integrated Lights Out Manager (ILOM)サブシステムに接続し、ILOMプロンプトから次のコマンドを実行することで、システム・コンソールを表示できます:

    -> start -script /SP/console

    システム・コンソールへの接続後、rootユーザーとしてログインし、次を実行してシステムを再起動できます:

    # shutdown -r now
  6. プロンプトが表示されたら、システム・コンソールを確認し、任意のキーを押してMOK管理を実行します。
  7. 「Perform MOK management」画面で、「Delete MOK」メニュー・オプションを選択します。
  8. 「View key 0」メニュー・オプションを選択し、キーの詳細が削除するキーと一致することを確認します。

    複数のキーを削除する場合は、「View key 1」「View key 2」などを使用して、すべてのキーの詳細を確認します。

  9. キーを削除します。
    1. 「Delete MOK」画面に戻ります。
    2. 「Continue」オプションを選択します。
    3. 「Delete the key(s)?」ダイアログで「Yes」を選択します。
    4. プロンプトが表示されたら、キー証明書の削除時に以前指定したMOK管理パスワードを指定します。

    これで、キーはUEFI Secure Bootキー・データベースから削除されます。

  10. 「Perform MOK management」画面で、「Reboot」メニュー・オプションを選択します。
  11. システムの再起動後、次のコマンドからの出力を調べて、キーが削除されていることを確認します。
    # mokutil --list-enrolled