【RHEL9】SELinuxの無効化 の巻

RHEL9では、/etc/selinux/config による SELinux の無効化に対応しなくなりました。

 

マジか?

更に読み進めるとこんなことも書いてありました。

 

今回のリリースで、/etc/selinux/config ファイルの SELINUX=disabled オプションを使用した SELinux の無効化に対応する機能がカーネルから削除されました。/etc/selinux/config でのみ SELinux を無効にすると、システムは SELinux が有効化されますが、ポリシーが読み込まれずに開始します。

さらに、Anaconda インストールプログラムおよび対応する man ページが更新され、この変更が反映されました。この変更により、LSM (Linux Security Module) フックの初期化後の読み取り専用保護も有効になります。

SELinux を無効にする必要がある場合は、selinux=0 パラメーターをカーネルコマンドラインに追加します。

というわけで、手順をまとめてみました。

スポンサーリンク

SELinux無効化

現在の状態を確認します。

# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

 

OSブート時に、Kernelに渡されたパラメータを確認します。

# cat /proc/cmdline 
BOOT_IMAGE=(hd0,gpt2)/vmlinuz-5.14.0-70.13.1.el9_0.x86_64 root=UUID=a74b7791-1377-4474-ae5b-XXXXXXXX66af ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=UUID=bd9d076c-981c-4615-b41a-XXXXX0d rhgb quiet

 

grubbyコマンドで、すべてのエントリーを表示させ現在の状態を確認します。

# grubby --info=ALL
index=0
kernel="/boot/vmlinuz-5.14.0-70.13.1.el9_0.x86_64"
args="ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=UUID=96cba0ce-818f-4d1a-9adb-9e1XXXXXXX625 rhgb quiet"
root="UUID=87706924-cb8a-466d-8963-7XXXXXXXa2b0"
initrd="/boot/initramfs-5.14.0-70.13.1.el9_0.x86_64.img"
title="Red Hat Enterprise Linux (5.14.0-70.13.1.el9_0.x86_64) 9.0 (Plow)"
id="d2534e6efb584d95aeXXXXXcb8e94ccd-5.14.0-70.13.1.el9_0.x86_64"
index=1
kernel="/boot/vmlinuz-0-rescue-d2534e6efb584d95ae20332cb8e94ccd"
args="ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=UUID=96cba0ce-818f-4d1a-9adb-9e1542c5d625 rhgb quiet"
root="UUID=87706924-cb8a-466d-8963-70280c04a2b0"
initrd="/boot/initramfs-0-rescue-d2534e6eXXXXXXX95ae20332cb8e94ccd.img"
title="Red Hat Enterprise Linux (0-rescue-XXXXXXXb584d95ae20332cb8e94ccd) 9.0 (Plow)"
id="d2534e6efb584d95aeXXXXXcb8e94ccd-0-rescue""

 

grubbyコマンドで、カーネルパラメータへ (selinux=0)を追加します。

grubby --update-kernel=ALL --args="selinux=0"

 

grubbyコマンドで、すべてのエントリーを表示させコマンド実行後の状態を確認します。(selinux=0 が追加されている。)

# grubby --info=ALL 
index=0 kernel="/boot/vmlinuz-5.14.0-70.13.1.el9_0.x86_64"
args="ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=UUID=96cba0ce-818f-4d1a-9adb-9e1XXXXXXX625 rhgb quiet selinux=0"
root="UUID=87706924-cb8a-466d-8963-7XXXXXXXa2b0" 
initrd="/boot/initramfs-5.14.0-70.13.1.el9_0.x86_64.img" 
title="Red Hat Enterprise Linux (5.14.0-70.13.1.el9_0.x86_64) 9.0 (Plow)" 
id="d2534e6efb584d95aeXXXXXcb8e94ccd-5.14.0-70.13.1.el9_0.x86_64"
index=1
kernel="/boot/vmlinuz-0-rescue-d2534e6efb584d95ae20332cb8e94ccd"
args="ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=UUID=96cba0ce-818f-4d1a-9adb-9e1542c5d625 rhgb quiet selinux=0"
root="UUID=87706924-cb8a-466d-8963-70280c04a2b0" 
initrd="/boot/initramfs-0-rescue-d2534e6eXXXXXXX95ae20332cb8e94ccd.img" 
title="Red Hat Enterprise Linux (0-rescue-XXXXXXXb584d95ae20332cb8e94ccd) 9.0 (Plow)" 
id="d2534e6efb584d95aeXXXXXcb8e94ccd-0-rescue""

 

設定を有効にするため、OSを再起動します。

# reboot

 

SELinuxの状態を確認します。

# sestatus
SELinux status:                 disabled

 

OSブート時に、Kernelに渡されたパラメータを確認します。(selinux=0が追加されている。)

# cat /proc/cmdline 
BOOT_IMAGE=(hd0,gpt2)/vmlinuz-5.14.0-70.13.1.el9_0.x86_64 root=UUID=a74b7791-1377-4474-ae5b-43fc014e66af ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=UUID=bd9d076c-981c-4615-b41a-18bd44b5300d rhgb quiet selinux=0

 

こんな感じで、Red Hat Linux 9 の SELinux 無効化のご紹介でした。

 

おすすめの記事