SELinux(Security Enhanced Linux)は、管理者とユーザーがアクセス制御をより細かく制御できるようにするLinuxカーネルセキュリティモジュールです。 SELinuxポリシールールに基づいたアクセスを許可します。
SELinuxポリシールールは、プロセスとユーザーが相互に対話する方法、およびプロセスとユーザーがファイルと対話する方法を指定します。
ファイルを開くプロセスなど、SELinuxポリシールールが明示的にアクセスを許可していない場合、アクセスは拒否されます。
SELinuxには3つのモードがあります:
- 強制:SELinuxは、SELinuxポリシールールに基づいてアクセスを許可します。
- 許容:SELinuxは、強制モードで実行した場合に拒否されたアクションのみをログに記録します。
- 無効:SELinuxポリシーがロードされていません。
デフォルトでは、CentOS 7では、SELinuxが有効になっており、強制モードになっています。
SELinuxを強制モードのままにしておくことをお勧めしますが、場合によっては、SELinuxを許容モードに設定するか、完全に無効にする必要があります。
このチュートリアルでは、CentOS7システムでSELinuxを無効にする方法を示します。
前提条件#
チュートリアルを開始する前に、sudo権限を持つユーザーとしてログインしていることを確認してください。
SELinuxステータスを確認する#
現在のSELinuxステータスとシステムで使用されているSELinuxポリシーを表示するには、sestatus
を使用します コマンド:
sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
上記の出力から、SELinuxが有効になっていて、強制モードに設定されていることがわかります。
SELinuxモードをtargeted
から一時的に変更できます permissive
次のコマンドを使用します:
sudo setenforce 0
ただし、この変更は現在のランタイムセッションでのみ有効です。
CentOS 7システムでSELinuxを永続的に無効にするには、以下の手順に従います。
-
/etc/selinux/config
を開きます ファイルを作成し、SELINUX
を設定しますdisabled
へのmod :# 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 these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted
-
ファイルを保存し、CentOSシステムを次のコマンドで再起動します:
sudo shutdown -r now
-
システムが起動したら、
sestatus
で変更を確認します コマンド:sestatus
出力は次のようになります。
SELinux status: disabled