SELinuxとは
SELinuxはセキュリティ管理をしてくれるとても大事なモジュールですが、慣れていないとSELinuxによる強力なアクセス制限によってインストール作業や運用業務でつまづくことがあります。
本来であればSELinuxをマスターすることが必要ですが、緊急時にはSELinuxの機能を停止する方法が手っ取り早い解決策となります。今回はその停止方法のご紹介です。
SELinux入門
SELinux動作状態の確認
SELinuxの動作状況は getenforce コマンドを調べられます。
# getenforce
Enforcing
Enforcing
getenforceコマンドを実行すると、現在のSELinuxの動作状況が以下のように表示されます。
- enforcing
- SELinux機能、アクセス制御が有効
- permissive
- SElinuxは警告を出力するが、アクセス制限は無効
- disabled
- SElinux機能、アクセス制御が無効
sestatusでより詳しい情報を表示させることができます。
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 21
Policy from config file: targeted
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 21
Policy from config file: targeted
SELinuxを一時的に有効・無効化
SELinux機能を一時的に無効化します。この方法を使った場合、サーバの再起動の際にSELinux機能は元の状態に戻ります。
動作状態の変更はsetenforceコマンドを使用します。setenforceコマンドで動作モードを指定すると、即座に変更されます。SELinux機能を一時的に無効化するには、setenforceコマンドで0を指定します。
# setenforce 0
SELinux機能を一時的に有効化するには、setenforceコマンドで1を指定します。
# setenforce 1
SELinuxの設定
再起動の際もSELinuxの状態を保持したい場合は、/etc/selinux/configを直接編集します。
# vi /etc/selinux/config
SELinuxを有効にする。
SELINUX=enforcing
SELinuxを無効にする。
SELINUX=disabled
サーバを再起動すると設定が反映されます。