13,007
回編集
72行目: | 72行目: | ||
<br> | <br> | ||
次に、インストール画面が表示されるので、メッセージにしたがってインストールする。<br> | 次に、インストール画面が表示されるので、メッセージにしたがってインストールする。<br> | ||
<br><br> | |||
== VirtualBoxモジュールの署名 (セキュアブートが有効の場合) == | |||
セキュアブートが有効な場合、VirtualBoxモジュールであるvboxdrv、vboxnetadp、vboxnetflt、vboxpciを署名に登録する必要がある。<br> | |||
<br> | |||
==== VirtualBoxモジュールの署名 (初めて署名する場合) ==== | |||
署名を登録する手順を以下に示す。<br> | |||
# キーペアを作成する。 | |||
#: <code>openssl req -new -x509 -newkey rsa:2048 -keyout VirtualBox.priv -outform DER -out VirtualBox.der -nodes -days 36500 -subj "/CN=VirtualBox/" \</code> | |||
#: <code>-addext "extendedKeyUsage=codeSigning"</code> | |||
#: <br> | |||
# VirtualBoxモジュール(vboxdrv、vboxnetadp、vboxnetflt、vboxpci)を署名する。 | |||
#: <code>sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha256 ./VirtualBox.priv ./VirtualBox.der $(/sbin/modinfo -n vboxdrv)</code> | |||
#: <code>sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha256 ./VirtualBox.priv ./VirtualBox.der $(/sbin/modinfo -n vboxnetadp)</code> | |||
#: <code>sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha256 ./VirtualBox.priv ./VirtualBox.der $(/sbin/modinfo -n vboxnetflt)</code> | |||
#: <code>sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha256 ./VirtualBox.priv ./VirtualBox.der $(/sbin/modinfo -n vboxpci)</code> | |||
#: <br> | |||
# MOK(Module owned Key)にキーをインポートする。<br><code>--root-pw</code>オプションを付加することにより、再起動時のVirtualBoxモジュールの署名において、rootパスワードが必要となる。 | |||
#: <code>sudo mokutil --import ./VirtualBox.der --root-pw</code> | |||
#: <br> | |||
# PCを再起動して、VirtualBoxモジュールの署名を登録する。 | |||
#: <code>sudo systemctl reboot</code> | |||
#: <br> | |||
# VirtualBoxモジュールが正しく読み込まれているかどうかを確認する。<br>正常に読み込まれている場合は、<u>"VirtualBox.der is already enrolled"</u>と表示される。 | |||
#: <code>cd <VirtualBoxモジュールの署名ファイルが存在するディレクトリ></code> | |||
#: <code>sudo mokutil --test-key ./VirtualBox.der</code> | |||
<br> | |||
この作業は1度だけ必要となることに注意する。<br> | |||
作成したキーは信頼されるため、キーを適切に保存する必要がある。<br> | |||
このキーで署名されたものはシステムから信頼されるため、セキュリティリスクとなる可能性があることに注意する。<br> | |||
<br> | |||
キーのパスワードを追加することもできる。<br> | |||
cd <VirtualBoxモジュールの署名ファイルが存在するディレクトリ> | |||
openssl rsa -des3 -in ./VirtualBox.priv -out ./VirtualBox.priv | |||
<br> | |||
キーのパスワードの削除もできる。<br> | |||
cd <VirtualBoxモジュールの署名ファイルが存在するディレクトリ> | |||
openssl rsa -in ./VirtualBox.priv -out ./VirtualBox.priv | |||
<br> | |||
==== VirtualBoxモジュールの署名の削除 ==== | |||
VirtualBoxモジュールの署名を削除する場合、以下のコマンドを実行して再起動する。<br> | |||
<code>--root-pw</code>オプションを付加することにより、再起動時のVirtualBoxモジュールの署名の削除において、rootパスワードが必要となる。<br> | |||
cd <VMwareモジュールの署名ファイルが存在するディレクトリ> | |||
sudo mokutil --delete ./VirtualBox.der --root-pw | |||
sudo systemctl reboot | |||
<br> | |||
==== Linuxカーネル更新後の再署名 ==== | |||
Linuxカーネルをアップデートした場合、以下に示す手順にしたがってVirtualBoxモジュールを再署名する必要がある。<br> | |||
# まず、VirtualBoxを起動する。<br>この時、自動的にVirtualBoxモジュール(vboxdrv、vboxnetadp、vboxnetflt、vboxpci)がアップデートされたカーネル用に再構築される。 | |||
#: <br> | |||
# キーペアを再作成する。 | |||
#: <code>openssl req -new -x509 -newkey rsa:2048 -keyout VirtualBox.priv -outform DER -out VirtualBox.der -nodes -days 36500 -subj "/CN=VirtualBox/" \</code> | |||
#: <code>-addext "extendedKeyUsage=codeSigning"</code> | |||
#: <br> | |||
# VirtualBoxモジュール(vboxdrv、vboxnetadp、vboxnetflt、vboxpci)を署名する。 | |||
#: <code>sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha256 ./VirtualBox.priv ./VirtualBox.der $(/sbin/modinfo -n vboxdrv)</code> | |||
#: <code>sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha256 ./VirtualBox.priv ./VirtualBox.der $(/sbin/modinfo -n vboxnetadp)</code> | |||
#: <code>sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha256 ./VirtualBox.priv ./VirtualBox.der $(/sbin/modinfo -n vboxnetflt)</code> | |||
#: <code>sudo /lib/modules/$(uname -r)/build/scripts/sign-file sha256 ./VirtualBox.priv ./VirtualBox.der $(/sbin/modinfo -n vboxpci)</code> | |||
#: <br> | |||
# MOK(Module owned Key)にキーをインポートする。 | |||
#: <code>cd <VirtualBoxモジュールの署名ファイルが存在するディレクトリ></code> | |||
#: <code>sudo mokutil --import ./VirtualBox.der --root-pw</code> | |||
#: <br> | |||
# PCを再起動して、VirtualBoxモジュールの署名を再登録する。 | |||
#: <code>sudo systemctl reboot</code> | |||
#: <br> | |||
# VirtualBoxモジュールが正しく読み込まれているかどうかを確認する。<br>正常に読み込まれている場合は、"VirtualBox.der is already enrolled"と表示される。 | |||
#: <code>cd <VirtualBoxモジュールの署名ファイルが存在するディレクトリ></code> | |||
#: <code>sudo mokutil --test-key ./VirtualBox.der</code> | |||
<br><br> | <br><br> | ||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ:CentOS]][[カテゴリ:SUSE]] | [[カテゴリ:CentOS]][[カテゴリ:SUSE]] |