5.3. セキュアブートを使用してカスタム RHEL イメージから RHEL インスタンスを設定する
Amazon Web Services (AWS) 上で Red Hat Enterprise Linux (RHEL) インスタンスをセキュアブートするには、カスタム RHEL Amazon Machine Image (AMI) を登録する際にセキュアブートを設定します。この AMI は事前に保存された UEFI 変数で構成されているため、そこから起動されたインスタンスは初回起動時にセキュアブートの仕組みを使用します。
前提条件
- AWS AMI イメージを作成してアップロードした。詳細は、AWS AMI の準備とアップロード を参照してください。
次のパッケージがインストールされている。
-
awscli2 -
python3 -
openssl -
efivar -
keyutils -
python3-virt-firmware
-
手順
カスタム証明書
custom_db.cerを生成します。$ openssl req -quiet \ -newkey rsa:3072 \ -nodes -keyout custom_db.key \ -new -x509 -sha256 \ -days 3650 -subj "/CN=Signature Database key/" \ --outform DER -out custom_db.cervirt-fw-varsユーティリティーを使用して、キー、データベース証明書、および UEFI 変数ストアからaws_blob.binバイナリーファイルを生成します。$ virt-fw-vars --enroll-redhat \ --add-db-cert OvmfEnrollDefaultKeys custom_db.cer \ --set-dbx /usr/share/edk2/ovmf/DBX* \ --output-aws aws_blob.binカスタマイズされた Blob は次のもので構成されます。
-
edk2-ovmfパッケージに含まれる公開鍵 (PK.cer)、鍵交換鍵 (KEK.cer)、許可された署名データベース (db)、および禁止された署名データベース (dbx) -
custom_db.cer生成された証明書
-
awscli2ユーティリティーを使用して、必要なセキュアブート変数を含むディスクスナップショットから AMI を作成し、登録します。$ aws ec2 register-image \ --name rhel-10.0-secure-boot \ --architecture x86_64 \ --virtualization-type hvm \ --root-device-name "/dev/sda1" \ --block-device-mappings "{\"DeviceName\": \"/dev/sda1\",\"Ebs\": {\"SnapshotId\": \"<snap-02d4db3813ff9b98e>\"}}" \ --ena-support --boot-mode uefi \ --region eu-central-1 \ --uefi-data $(cat aws_blob.bin) --output json{ "ImageId": "example-ami-id" }- AWS コンソールからインスタンスを再起動します。
検証
セキュアブート機能を検証します。
$ sudo mokutil --sb-stateSecureBoot enabledkeyctlユーティリティーを使用して、カスタム証明書のカーネルキーリングを確認します。$ sudo keyctl list %:.platform7 keys in keyring: 741159788: ---lswrv 0 0 asymmetric: Microsoft Windows Production PCA 2011: a92902398e16c49778cd90f99e4f9ae17c55af53 941772267: ---lswrv 0 0 asymmetric: Red Hat Secure Boot CA 8: e1c6c580aa1e21d585aad9bf20f3929e5ec1f08b 979739129: ---lswrv 0 0 asymmetric: Red Hat Secure Boot CA 5: cc6fa5e72868ba494e939bbd680b9144769a9f8f 303712700: ---lswrv 0 0 asymmetric: Signature Database key: 7dff9c7433d40daa6cb2cdbdb4c2b7c93f5252a4 747313470: ---lswrv 0 0 asymmetric: Microsoft UEFI CA 2023: 81aa6b3244c935bce0d6628af39827421e32497d 710788326: ---lswrv 0 0 asymmetric: Microsoft Corporation UEFI CA 2011: 13adbf4309bd82709c8cd54f316ed522988a1bd4 163192: ---lswrv 0 0 asymmetric: Microsoft Corporation: Windows UEFI CA 2023: aefc5fbbbe055d8f8daa585473499417ab5a5272