SELinuxを無効にする方法

Webサーバーを動かすのに、SELinuxが有効のため起動に失敗。
手っ取り早く無効にしてしまいました。のでメモ。

CentOS5.3で動作確認しています。

SELinuxとは

従来の Linux(もっと広くいえばUNIX全体)のシステムでは、ディレクトリやファイルといったリソースに対するアクセス制限は各ファイルに割り当てられているパーミッションに基づいている。
このパーミッションは「オーナー」、「グループ」、「その他のユーザ」に対してそれぞれ「読み込み」、「書き込み」、「実行」の許可を設定するものであり、これらのパーミッションを「無視して」アクセス可能なユーザとして root(スーパーユーザー) がある。 すなわち全ての権限が root に集中しているといえる。このため一度 root のパスワードが漏洩するとシステムに致命的な被害を及ぼすという欠点がある。
SELinux はこのことに注目しセキュリティの対象に応じてHTTP、FTPといったプロセスごとにアクセス制限をかける Type Enforcement (TE)と、rootも含む全てのユーザに関して制限をかけるロールベースアクセス制御(RBAC)などで制御し、rootに権限が集中することを防ぐことでセキュリティの高いシステムの構築の提供を目的としてる。

Security-Enhanced Linux - Wikipedia

SELinuxは,「万一侵入されたときでも,その被害を最小限にする」ためのものだ。

第1回 セキュアOS機能「SELinux」の基本的な仕組み | 日経 xTECH(クロステック)

SELinux関連コマンド・設定

SELinuxのステータスを見る
# getenforce
# Enforcing
Enforcing
有効
Permissive
有効だが、アクセス制限は行われない
Disabled
無効
SELinuxのアクセス制御を無効にする
# setenforce 0
# getenforce
# Permissive
0
Permissiveに変更
1
Enforcingに変更
SELinuxを完全に停止する
# vi /etc/sysconfig/selinux
# This file controls the state of SELinux on the system. 
# SELINUX= can take one of these three values: 
#>enforcing - SELinux security policy is enforced.
#>permissive - SELinux prints warnings instead of enforcing.
#>disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#>targeted - Only targeted network daemons are protected.
#>strict - Full SELinux protection.
SELINUXTYPE=targeted

SELINUXの設定を、

SELINUX=disabled

に書き換えます。再起動すればOKです。


SELinux徹底ガイド―セキュアOSによるシステム構築と運用 基本的な仕組みから高度な運用管理方法までを徹底解説
中村 雄一 水上 友宏 上野 修一 日立ソフトウェアエンジニアリング 日立ソフトウエアエンジニアリング= 日立SK=
日経BP
売り上げランキング: 252847
おすすめ度の平均: 5.0
5 必読の書
5 SELinuxを触る方には必読
5 徹底活用しましょう