2.4. 이전에 비활성화한 시스템에서 SELinux 활성화
오류를 부팅하거나 처리할 수 없는 시스템과 같은 문제를 방지하려면 이전에 비활성화한 시스템에서 SELinux를 활성화하기 전에 허용 모드에서 ACL(Access Vector Cache) 메시지를 해결합니다.
시스템이 허용 모드에서 SELinux를 실행하는 경우 사용자와 프로세스는 다양한 파일 시스템 오브젝트에 잘못 레이블을 지정할 수 있습니다. SELinux가 비활성화된 동안 생성된 파일 시스템 개체는 레이블이 지정되지 않습니다. 이 동작은 SELinux가 파일 시스템 오브젝트의 올바른 레이블을 사용하므로 강제 모드로 변경할 때 문제가 발생합니다.
잘못 레이블이 지정되거나 레이블이 지정되지 않은 파일이 문제가 발생하지 않도록 SELinux는 비활성화 상태에서 허용 또는 강제 모드로 파일 시스템을 자동으로 다시 지정합니다.
재레이블을 위해 시스템을 재부팅하기 전에, 예를 들어 enforcing=0
커널 옵션을 사용하여 시스템이 허용 모드로 부팅되는지 확인합니다. 이렇게 하면 selinux-autorelabel
서비스를 시작하기 전에 시스템에 systemd
에 필요한 레이블이 지정되지 않은 파일이 포함된 경우 시스템이 부팅되지 않습니다. 자세한 내용은 RHBZ#2021835 를 참조하십시오.
절차
- 허용 모드에서 SELinux를 활성화합니다. 자세한 내용은 SELinux를 허용 모드로 변경을 참조하십시오.
시스템을 다시 시작하십시오.
reboot
# reboot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - SELinux 거부 메시지를 확인합니다. 자세한 내용은 SELinux 거부 식별 을 참조하십시오.
다음 재부팅 시 파일의 레이블을 다시 지정했는지 확인합니다.
fixfiles -F onboot
# fixfiles -F onboot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이렇게 하면
-F
옵션이 포함된/.autorelabel
파일이 생성됩니다.주의fixfiles -F onboot
명령을 시작하기 전에 항상 허용 모드로 전환합니다.기본적으로
autorelabel
은 시스템에 사용 가능한 CPU 코어만큼 많은 스레드를 병렬로 사용합니다. 자동 레이블을 다시 지정하는 동안 단일 스레드만 사용하려면fixfiles -T 1 onboot
명령을 사용합니다.- 거부 모드가 없는 경우 강제 모드로 전환합니다. 자세한 내용은 부팅 시 SELinux 모드 변경을 참조하십시오.
검증
시스템을 다시 시작한 후
getenforce
명령이Enforcing
을 반환하는지 확인합니다.getenforce
$ getenforce Enforcing
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 단계
SELinux를 강제 모드로 사용하여 사용자 정의 애플리케이션을 실행하려면 다음 시나리오 중 하나를 선택합니다.
-
unconfined_service_t
도메인에서 애플리케이션을 실행합니다. - 애플리케이션에 대한 새 정책을 작성합니다. 자세한 내용은 사용자 지정 SELinux 정책 작성 섹션을 참조하십시오.