/proc
내 감사 플러그인 프로세스는 파일을 반복 하고 읽을 수 있어야 /proc/pid/stat
하지만 SElinux는 이를 거부합니다.
내 플러그인의 프로세스 컨텍스트:
ps auxZ | grep -i myplugin
system_u:system_r:auditd_t:s0 root 8143 0.3 0.3 96188 6284 ? D<l 11:02 0:00 myplugin
거부 로그 예:type=AVC msg=audit(1705309402.866:1150): avc: denied { getattr } for pid=8143 comm="myplugin" path="/proc/42" dev="proc" ino=95999 scontext=system_u:system_r:auditd_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=dir permissive=0
audit2allow
나는 감사 로그를 읽고 필요한 명령문을 생성하는 selinux 정책 생성을 사용하여 이 문제를 해결했습니다 allow
. 그런데 .te
그 파일이 100줄이 넘는 너무 커서 읽을 수 없다는 사실이 밝혀졌습니다. 또한 제가 올바르게 이해했다면 이는 신뢰할 수 없는 솔루션입니다. 예를 들어 다음에 플러그인을 실행하고 반복할 때 /proc
이미 일부 새로운 프로세스가 있을 수 있으므로 /proc
새로운 보안 컨텍스트가 있는 새 파일이 없기 때문입니다. 그리고 audit2allow
이 문서에 관한 나의 정책에는 어떤 진술도 없습니다 . allow
결과적으로 SElinux는 이 새 파일에 대한 액세스를 거부합니다.
이 문제를 해결하는 더 쉽고 안정적인 방법이 있습니까? 기본적으로 특정 프로세스가 가능한 모든 파일을 나열하지 않고도 모든 파일을 읽을 수 있다는 정책이 필요합니다 /proc
.