19.4. SecureBoot の仮想マシンの作成
SecureBoot 機能を使用する Linux 仮想マシンを作成できます。これにより、仮想マシンで暗号で署名された OS を実行できるようになります。これは、仮想マシンのゲスト OS がマルウェアにより変更された場合に役立ちます。このようなシナリオでは、SecureBoot により仮想マシンが起動しなくなり、ホストマシンへのマルウェアの潜在的な拡散を阻止します。
前提条件
- 仮想マシンが Q35 マシンタイプである。
- ホストシステムは AMD64 または Intel 64 アーキテクチャーを使用します。
edk2-OVMF
パッケージがインストールされている。# dnf install edk2-ovmf
オペレーティングシステム (OS) のインストールソースがローカルまたはネットワークで利用できる。これには、以下のいずれかの形式を使用できます。
- インストールメディアの ISO イメージ
既存の仮想マシンインストールのディスクイメージ
警告RHEL 9 では、ホストの CD-ROM デバイスまたは DVD-ROM デバイスからインストールすることができません。RHEL 9 で利用可能な仮想マシンのインストール方法を使用する際に、インストールソースに CD-ROM または DVD-ROM を選択するとインストールに失敗します。詳細は Red Hat ナレッジベース を参照してください。
- 任意: インストールをより速く、簡単に設定するために、キックスタートファイルを利用できます。
手順
virt-install
コマンドを使用して、コマンドラインインターフェイスを使用した仮想マシンの作成 で説明されているとおりに仮想マシンを作成します。--boot
オプションには、uefi,nvram_template=/usr/share/OVMF/OVMF_VARS.secboot.fd
を使用します。これは、OVMF_VARS.secboot.fd
ファイルおよびOVMF_CODE.secboot.fd
ファイルをテンプレートとして使用します。仮想マシンの不揮発性 RAM (NVRAM) 設定のテンプレートとして使用します。これにより、SecureBoot 機能を有効にします。以下に例を示します。
# virt-install --name rhel8sb --memory 4096 --vcpus 4 --os-variant rhel9.0 --boot uefi,nvram_template=/usr/share/OVMF/OVMF_VARS.secboot.fd --disk boot_order=2,size=10 --disk boot_order=1,device=cdrom,bus=scsi,path=/images/RHEL-9.0-installation.iso
- 画面の指示に従って、OS のインストール手順を進めます。
検証
- ゲスト OS がインストールされたら、グラフィカルゲストコンソール で端末を開いて仮想マシンのコマンドラインにアクセスするか、SSH を使用 してゲスト OS へ接続します。
仮想マシンで SecureBoot が有効になっていることを確認するには、
mokutil --sb-state
コマンドを使用します。# mokutil --sb-state SecureBoot enabled