Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

11장. 문제 해결

다음 장에서는 SELinux가 액세스를 거부할 때 발생하는 사항, 세 가지 문제의 원인, 올바른 레이블 지정에 대한 정보를 찾는 위치, SELinux 거부 분석, audit2allow 로 사용자 지정 정책 모듈 생성에 대해 설명합니다.

11.1. 액세스가 거부되면 어떤 문제가 발생합니까

액세스 허용 또는 허용하지 않기와 같은 SELinux 결정은 캐시됩니다. 이 캐시를 AVC(액세스 벡터 캐시)라고 합니다. 거부 메시지는 SELinux가 액세스를 거부하면 로깅됩니다. 이러한 거부는 "AVC 거부"라고도 하며 실행 중인 데몬에 따라 다른 위치에 기록됩니다.
데몬: auditd
로그 위치: /var/log/audit/audit.log
데몬: auditd off; rsyslogd on
로그 위치: /var/log/messages
데몬: setroubleshootd, rsyslogd, auditd
로그 위치: /var/log/audit/audit.log. 읽기 쉬운 거부 메시지도 /var/log/messages에 전송됩니다.
X Window 시스템을 실행하는 경우 setroubleshoot 및 setroubleshoot -server 패키지가 설치되어 setroubleshootdauditd 데몬이 실행 중인 경우 SELinux에서 액세스를 거부하면 경고가 표시됩니다.
Show (표시)를 클릭하면 SELinux가 액세스를 거부한 이유와 액세스를 허용하는 가능한 솔루션이 표시됩니다. X Window 시스템을 실행하지 않는 경우 SELinux에서 액세스를 거부하면 명확하지 않습니다. 예를 들어, 웹사이트를 검색하는 사용자에게 다음과 유사한 오류가 발생할 수 있습니다.
Forbidden

You don't have permission to access file name on this server
이러한 경우 DAC 규칙(표준 Linux 권한)에서 액세스를 허용하는 경우 /var/log/messages 및 /var/ log/audit/audit.log 에서 "SELinux가 차단""거부됨" 오류가 각각 있는지 확인합니다. root 사용자로 다음 명령을 실행하여 수행할 수 있습니다.
~]# grep "SELinux is preventing" /var/log/messages
~]# grep "denied" /var/log/audit/audit.log