2장. SELinux 상태 및 모드 변경
활성화되면 SELinux를 강제 또는 허용 모드의 두 가지 모드 중 하나로 실행할 수 있습니다. 다음 섹션에서는 이러한 모드로 영구적으로 변경하는 방법을 보여줍니다.
2.1. SELinux 상태 및 모드의 영구 변경
SELinux 상태 및 모드에서 설명한 대로 SELinux를 활성화하거나 비활성화할 수 있습니다. 활성화되는 경우 SELinux에는 강제 및 허용 모드의 두 가지 모드가 있습니다.
getenforce
또는 sestatus
명령을 사용하여 SELinux가 실행 중인 모드를 확인합니다. getenforce
명령은 Enforcing
,Permissive
또는 Disabled
를 반환합니다.
sestatus
명령은 SELinux 상태 및 사용 중인 SELinux 정책을 반환합니다.
$ 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: 31
시스템이 허용 모드에서 SELinux를 실행하는 경우 사용자와 프로세스는 다양한 파일 시스템 오브젝트에 잘못 레이블을 지정할 수 있습니다. SELinux가 비활성화되는 동안 생성된 파일 시스템 오브젝트는 레이블로 지정되지 않습니다. 이 동작은 SELinux가 파일 시스템 오브젝트의 올바른 레이블을 사용하므로 강제 모드로 변경할 때 문제가 발생합니다.
레이블이 지정되지 않은 파일에 잘못 레이블이 지정되지 않은 파일을 방지하기 위해 SELinux는 비활성화 상태에서 허용 또는 강제 모드로 변경될 때 파일 시스템의 레이블을 자동으로 다시 지정합니다. 다음 재부팅 시 파일의 레이블을 다시 지정하려면 root로 fixfiles -F onboot
명령을 사용하여 -F
옵션이 포함된 /.autorelabel
파일을 만듭니다.
레이블을 다시 지정하기 위해 시스템을 재부팅하기 전에, 예를 들어 enforcing=0
커널 옵션을 사용하여 허용 모드로 부팅되는지 확인합니다. 이렇게 하면 selinux-autorelabel
서비스를 시작하기 전에 시스템에 systemd
에 필요한 레이블이 지정되지 않은 파일이 포함된 경우 시스템이 부팅되지 않습니다. 자세한 내용은 RHBZ#2021835 를 참조하십시오.