SELinux : 動作モードの設定2021/03/02 |
SELinux (Security-Enhanced Linux) の基本操作/設定です。
SELinux を設定することにより、各種リソースへの強制アクセス制御 (MAC - Mandatory Access Control) 機能が利用可能となります。
|
|
[1] | SELinux が現在利用可能かどうかは、現在の動作モードを表示することで確認できます。 (システムインストール時のデフォルト動作モードは Enforcing) |
# 現在の動作モード表示 [root@dlp ~]# getenforce Enforcing # enforcing ⇒ MAC 有効な状態 (デフォルト) # permissive ⇒ ポリシーに従って監査ログの記録のみを行う (アクセス拒否はしない) # disabled ⇒ 無効な状態 # 以下でも確認可 ([Current mode] 行が該当) [root@dlp ~]# 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 Memory protection checking: actual (secure) Max kernel policy version: 33 |
[2] | [permissive] ⇔ [enforcing] の動作モード切り替えは [setenforce] コマンドで変更可能です。 ただし、システム再起動すると元々の設定に戻ります。また [disabled] への一時的な切り替えはできません。 |
[root@dlp ~]#
getenforce Enforcing # [setenforce 0] で [Permissive] に切り替え [root@dlp ~]# setenforce 0 [root@dlp ~]# getenforce Permissive # [setenforce 1] で [Enforcing] に切り替え [root@dlp ~]# setenforce 1 [root@dlp ~]# getenforce Enforcing |
[3] | 動作モードを恒久的に変更する場合は設定ファイルで設定します。 |
[root@dlp ~]#
vi /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=enforcing # SELINUXTYPE= can take one of these three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted # 変更後はシステム再起動 [root@dlp ~]# |
[4] | 動作モードが無効な状態 (disabled) から 有効な状態 (enforcing/permissive) に変更する場合は、リラべリングが必要になります。 これは、無効な状態の時に作成されたファイルは SELinux のラベル付けが行われていないため、それらについても SELinux によるアクセス制御を有効にするためには、後述する SELinux コンテキストと呼ばれる情報でラベル付けをする必要があるためです。 リラべリングは、システム再起動時の起動中に実行されますが、相応の時間がかかるため注意が必要です。 |
# 以下のように設定して再起動すると次回起動時にリラべリングされる [root@dlp ~]# touch /.autorelabel [root@dlp ~]# |
Sponsored Link |