SELinux」カテゴリーアーカイブ




「Permission denied」を引き起こす、SELinuxを無効化・有効化コマンドの確認




投稿日:

SELinuxは高いセキュリティを保つ事ができる反面、様々なアプリケーションに影響を与えます。
よって、FWなど他の手段でセキュリティを担保している場合は、無効化しておく方が運用や開発はしやすいです。

というわけで、SELinuxの有効化、無効化の方法と確認についてまとめます。

【動作状況の確認】

getenforce コマンドを調べられます。以下のうおうに3種類の状態があります。

[html]
Enforcing
SELinux機能、アクセス制御が有効

Permissive
SElinuxは警告を出力するが、アクセス制限は無効

Disabled
SElinux機能、アクセス制御が無効
[/html]


sestatus コマンドを利用すると、より詳しい情報を表示させることができます。
[html]
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: enforcing
Policy version: 24
Policy from config file: targeted
[/html]

では次に、有効化・無効化をしてみます。

【SELinuxを動的に有効化・無効化する】

動的にするというのはサーバ再起動などに伴い、設定が元に戻ることを指します。一時的に変更する場合はこれでよいですが、ずっとその状態をキープするのであれば、次の【静的に有効化・無効化する】を合わせて実施してください。

setenforceコマンドを使用します。setenforceコマンドで動作モードを指定すると、即座に変更されます。

[html]
SELinux機能を一時的に無効化
# setenforce 0

SELinux機能を一時的に有効化
# setenforce 1
[/html]


【SELinuxを静的に有効化・無効化する】

/etc/selinux/configを直接編集しておきます。すると、再起動時に設定が反映されます。

[html]
# vi /etc/selinux/config

SELinuxを有効にする場合は以下
SELINUX=enforcing

SELinuxを無効にする場合は以下
SELINUX=disabled

サーバを再起動すると設定が反映されます。
[/html]