2.3. SELinux の Enforcing モードへの変更
SELinux を Enforcing モードで実行している場合は、SELinux ポリシーが強制され、SELinux ポリシールールに基づいてアクセスが拒否されます。RHEL では、システムに SELinux を最初にインストールした時に、Enforcing モードがデフォルトで有効になります。
前提条件
-
selinux-policy-targeted
、libselinux-utils
、およびpolicycoreutils
パッケージがシステムにインストールされている。 -
selinux=0
またはenforcing=0
カーネルパラメーターは使用されません。
手順
任意のテキストエディターで
/etc/selinux/config
ファイルを開きます。以下に例を示します。vi /etc/selinux/config
# vi /etc/selinux/config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SELINUX=enforcing
オプションを設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を保存して、システムを再起動します。
reboot
# reboot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次にシステムを起動する際に、SELinux はシステム内のファイルおよびディレクトリーのラベルを再設定し、SELinux が無効になっている間に作成したファイルおよびディレクトリーに SELinux コンテキストを追加します。
検証
システムの再起動後に、
getenforce
コマンドがEnforcing
を返すことを確認します。getenforce
$ getenforce Enforcing
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
トラブルシューティング
Enforcing モードに変更したあと、SELinux ポリシールールが間違っていたか、設定されていなかったため、SELinux が一部のアクションを拒否する場合があります。
SELinux に拒否されるアクションを表示するには、root で以下のコマンドを実行します。
ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts today
# ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts today
Copy to Clipboard Copied! Toggle word wrap Toggle overflow または、
setroubleshoot-server
パッケージがインストールされている場合は、次のように入力します。grep "SELinux is preventing" /var/log/messages
# grep "SELinux is preventing" /var/log/messages
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SELinux が有効で、Audit デーモン (
auditd
) がシステムで実行していない場合は、dmesg
コマンドの出力で SELinux メッセージを検索します。dmesg | grep -i -e type=1300 -e type=1400
# dmesg | grep -i -e type=1300 -e type=1400
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
詳細は Troubleshooting problems related to SELinux を参照してください。