5장. SELinux 관련 문제 해결
이전에 비활성화된 시스템에서 SELinux를 활성화하거나 비표준 구성에서 서비스를 실행하는 경우 SELinux에 의해 차단될 수 있는 상황을 해결해야 할 수 있습니다. 대부분의 경우 SELinux 거부는 잘못된 구성 신호입니다.
5.1. SELinux 거부 확인 링크 복사링크가 클립보드에 복사되었습니다!
이 절차의 필요한 단계만 따릅니다. 대부분의 경우 1단계를 수행해야 합니다.
절차
SELinux에서 시나리오를 차단하면
/var/log/audit/audit.log
파일이 거부에 대한 자세한 정보를 확인하는 첫 번째 위치입니다. 감사 로그를 쿼리하려면ausearch
툴을 사용합니다. 액세스 허용 또는 허용하지 않는 것과 같은 SELinux 결정은 캐시되고 이 캐시를 AVC(액세스 벡터 캐시)라고 하므로 메시지 유형 매개 변수에 대해AVC
및USER_AVC
값을 사용합니다.ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent
# ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 일치하는 항목이 없으면 감사 데몬이 실행 중인지 확인합니다. 그렇지 않으면
auditd
를 시작한 후 거부된 시나리오를 반복하고 감사 로그를 다시 확인합니다.auditd
가 실행 중이지만ausearch
출력에 일치하는 항목이 없는 경우systemd
저널에서 제공하는 메시지를 확인합니다.journalctl -t setroubleshoot
# journalctl -t setroubleshoot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SELinux가 활성 상태이고 시스템에서 감사 데몬이 실행되지 않는 경우
dmesg
명령의 출력에서 특정 SELinux 메시지를 검색합니다.dmesg | grep -i -e type=1300 -e type=1400
# dmesg | grep -i -e type=1300 -e type=1400
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이전 세 가지 점검 후에도 아무 것도 찾을 수 없습니다. 이 경우
dontaudit
규칙으로 인해 AVC 거부를 음소거할 수 있습니다.dontaudit
규칙을 일시적으로 비활성화하려면 모든 거부를 로깅할 수 있습니다.semodule -DB
# semodule -DB
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 거부된 시나리오를 다시 실행하고 이전 단계를 사용하여 거부 메시지를 검색한 후 다음 명령을 사용하면 정책에서
dontaudit
규칙을 다시 활성화합니다.semodule -B
# semodule -B
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이전 4 단계를 모두 적용하고 문제가 여전히 확인되지 않은 상태로 남아 있는 경우 SELinux가 시나리오를 실제로 차단하는지 고려하십시오.
허용 모드로 전환합니다.
setenforce 0 getenforce
# setenforce 0 $ getenforce Permissive
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 시나리오를 반복합니다.
문제가 계속 발생하면 SELinux와 다른 것이 시나리오를 차단하는 것입니다.