1.4. SELinux の状態とモード

SELinux は、3 つのモード (Disabled、Permissive、または Enforcing) のいずれかで実行できます。
Disabled モードを使用することは推奨されません。システムは、SELinux ポリシーの強制を回避するだけでなく、ファイルなどの任意の永続オブジェクトにラベルを付けなくなり、将来的に SELinux を有効にすることが難しくなります。
Permissive モードでは、システムでは、読み込んだセキュリティーポリシーを SELinux が強制しているように振る舞い、オブジェクトのラベリングや、ログにアクセスを拒否したエントリーを出力しますが、実際には操作を拒否しているわけではありません。Permissive モードは、実稼働システムで使用することは推奨されませんが、SELinux ポリシーの開発には役に立ちます。
Enforcing モードは、デフォルトのモードで、推奨される動作モードです。SELinux は、Enforcing モードでは正常に動作し、読み込んだセキュリティーポリシーをシステム全体に強制します。
Enforcing モードと Permissive モードの切り替えには、setenforce ユーティリティーを使用します。setenforce を使用した変更は、再起動されると維持されません。Enforcing モードへの変更は、Linux root ユーザーで setenforce 1 コマンドを実行します。Permissive モードへの変更は、setenforce 0 コマンドを実行します。現在の SELinux モードを表示するには、以下のように getenforce ユーティリティーを実行します。
~]# getenforce
Enforcing
~]# setenforce 0
~]# getenforce
Permissive
~]# setenforce 1
~]# getenforce
Enforcing
Red Hat Enterprise Linux では、システムを Enforcing モードで実行している場合に、個々のドメインを Permissive モードに設定できます。たとえば、httpd_t ドメインを Permissive に設定するには、以下のコマンドを実行します。
~]# semanage permissive -a httpd_t
詳細は「Permissive ドメイン」を参照してください。

注記

状態とモードの永続的な変更については、「SELinux の状態とモードの永続的変更」で説明しています。