SELinux の設定

環境

今回の環境は、以下をインストールした状態となります。

SELinux

SELinuxとは

SELinuxは「Security Enhanced Linux」の略です。 ちょっと古い記事ですが、SELinuxについては以下などを参照してください。

http://itpro.nikkeibp.co.jp/article/COLUMN/20070827/280411/?rt=nocnt

SELinuxの状態確認

SELinuxの状態を確認するには、「getenforce」コマンドを使用します。 コマンドを実行すると、以下のようにSELinuxの状態が表示されます。

  • enforcing SELinux機能とアクセス制御が有効な状態
  • permissive SElinux機能は有効だが、アクセス制限は無効
  • disabled SElinux機能、アクセス制御ともに無効

さくらのVPS でインストールされるCentOS では、以下のような応答が返ってきました。 初期状態では無効のようです。

[bash]

getenforce

Disabled [/bash]

SELinuxの無効化・有効化

一時的な変更

SELinux機能を無効化したり、有効にしたりするには、setenforceコマンドを使います。

このコマンドで設定を変更すると即座に適用されますが、一時的な設定となりますのでサーバを再起動すると元の設定に戻ってしまいますので、注意が必要です。

[bash] SELinuxを無効化する

setenforce 0

SELinuxを有効化する

setenforce 1

[/bash]

恒久的な変更

再起動後もSELinuxの状態を維持するには、/etc/selinux/configの内容を修正しましょう。

初期状態は以下のようになっていました。

[bash]

 cat /etc/selinux/config

 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 - No SELinux policy is loaded.

SELINUX=disabled

 SELINUXTYPE= can take one of three two values:

     targeted - Targeted processes are protected,

     minimum - Modification of targeted policy. Only selected processes are pro

tected.

     mls - Multi Level Security protection.

SELINUXTYPE=targeted [/bash]

 

この設定ファイルの8行目にある「SELINUX=」の部分を変更します。 指定方法は以下の通りです。

設定ファイルの修正しても現在の設定は変更されませんので、setenforceコマンドで即時変更するか、サーバを再起動しておきましょう。