합법적인 프로그램이 내 시스템에 액세스하는 것을 허용하지 않는 SELinux 문제를 해결하는 방법은 무엇입니까?

합법적인 프로그램이 내 시스템에 액세스하는 것을 허용하지 않는 SELinux 문제를 해결하는 방법은 무엇입니까?

일부 프로그램이 업무를 수행하는 동안 SELinux에서 액세스가 거부되는 시스템이 있습니다. 이러한 프로그램은 ClamAV, fall2ban 및 Logwatch입니다.

SELinux 문제 해결사의 지침에 따라 ClamAV(Clamscan)에 대한 모든 액세스를 성공적으로 허용한 것 같습니다. 문제 해결사에서 Fail2ban 및 Logwatch도 허용했지만 여전히 일부 액세스가 거부되고 있는 것 같습니다.

프로그램을 허용하는 명령은 다음과 같습니다.

grep fail2ban-client /var/log/audit/audit.log | audit2allow -M mypol

그리고

semodule -i mypol.pp

질문:

SELinux가 이러한 프로그램에 대한 액세스를 거부하는지 여부, 시스템에서 필요한 액세스 권한 및 이 문제를 해결하는 방법을 어떻게 알 수 있습니까?

이것은: ausearch-m avc

답변1

때때로 selinux는 로깅 없이 리소스에 대한 액세스를 거부합니다. '검토 안 함' 규칙이 활성화되어 있는지 확인하세요. 활성화하거나 일시적으로 비활성화하려면 "semodule -B" 또는 "-DB"를 사용하십시오.

답변2

SELinux 로그가 있는 곳입니다. 로깅은 다음에서 수행됩니다.

/var/log/audit/audit.log

파일을 tailf하고 grep 파이프를 사용하여 원하는 것을 검색하십시오.

텍스트 편집기를 사용하여 /etc/selinux/targeted/booleans 파일을 엽니다.

vi /etc/selinux/targeted/booleans

예를 들어 Apache를 제어하려면

httpd_disable_trans 값을 다음과 같이 수정합니다: httpd_disable_trans=1

파일을 저장하고 닫습니다. 다음 두 명령을 입력하십시오.

# setsebool httpd_disable_trans 1
# /etc/init.d/httpd restart

X에서 이 작업을 수행하려면

쉘 프롬프트 열기

명령을 입력하다

system-config-securitylevel &

SELinux 탭 선택 > "httpd 데몬에 대한 SELinux 보호 비활성화" 체크박스 클릭 > 변경 사항 저장

# /etc/init.d/httpd r

변경하려면 selinux를 다시 시작하세요.

관련 정보