3.3. Kernel Adress Space Layout Randomization
Red Hat Enterprise Linux 7.5 以降では、KVM ゲスト仮想マシンの Kernel Address Space Randomization (KASLR) 機能が含まれています。KASLR は、カーネルイメージを解凍する物理アドレスおよび仮想アドレスをランダム化できるため、カーネルオブジェクトの位置に基づいてゲストのセキュリティー攻撃を防ぎます。
KASLR はデフォルトで有効にされますが、ゲストのカーネルコマンドラインに
nokaslr
文字列を追加することで、特定のゲストで無効にできます。ゲストの起動オプションを編集するには、次のコマンドを使用します。guestname はゲストの名前です。
# virt-edit -d guestname /etc/default/grub
その後、たとえば、
GRUB_CMDLINE_LINUX
行を変更します。
GRUB_CMDLINE_LINUX="rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb quiet nokaslr"
重要
KASLR で有効になっているゲストから作成したゲストのダンプファイルは、crash ユーティリティーでは読み込みできません。これを修正するには、ゲストの XML 設定ファイルの
<features>
セクションに <vmcoreinfo/>
要素を追加します。
宛先のホストが
<vmcoreinfo/>
をサポートしない OS を使用している場合は、<vmcoreinfo/>
を使用したゲストの 移行 に失敗する点に留意してください。これには、Red Hat Enterprise Linux 7.4 以前のバージョンと、Red Hat Enterprise Linux 6.9 以前のバージョンが該当します。