![SELinux가 sss_cache를 방해합니다.](https://linux55.com/image/143076/SELinux%EA%B0%80%20sss_cache%EB%A5%BC%20%EB%B0%A9%ED%95%B4%ED%95%A9%EB%8B%88%EB%8B%A4..png)
체계:
- HP 파빌리온 파워 노트북 15-cb0xx
- 통합 그래픽이 활성화된 Intel i7-7700HQ(BIOS에서 끌 수 없음)
- 페도라 28
- 엔비디아 GTX 1050(모바일)
GUI를 사용하여 약 119개의 패키지를 업데이트 했습니다 dnfdragora
(한동안 업데이트하는 것을 잊어버렸습니다 :). 어느 시점에서 SELinux로부터 다음과 같은 알림을 받았습니다.
SELinux is preventing sss_cache from write access on the directory /var/lib/sss/db/
나는 그것을 좀 더 조사한 결과 /var/log/messages
SELinux /var/log/audit/audit.log
가 나에게 말한 것과 동일한 것을 발견했습니다.
이 모든 것이 끝났을 때 상황이 조금 느려지는 것을 발견하여 다시 시작했습니다. 특히 Fedora 로고를 로드하고, 로그인 GUI를 로드하고, 데스크탑을 로드할 때 다시 시작 속도가 느려집니다. 추가 재부팅으로 아무것도 수정되지 않았습니다.
맨페이지를 보면서 sss_cache
주요 기능과 SSSD(System Security Services Daemon)와 작동하는 방식에 대해 배웠습니다.
SELinux 대화 상자에 표시되는 내용은 다음과 같습니다.
나는 이것이 잠재적인 버그를 관리자에게 알리고 정책 변경으로 인해 SELinux가 앞으로 sss_cache에 경고하는 것을 방지할 것이라는 것을 알고 있습니다. Linux 시스템에 추가/구성 가능한 보안 기능을 제공한다는 점을 제외하면 SELinux에 대해 아는 바가 없습니다. 하지만 난 아직도 이해가 안 돼요왜이런 일이 발생합니까, 아니면 더 나은 다른 솔루션이 있습니까? 또한 이것이 제가 인지하고 있는 속도 저하를 해결할 것인지 확실하지 않습니다.
누가 나에게 말할 수 있습니까?
- 왜 이런 일이 발생합니까? SELinux는 SSSD와 관련된 모든 것에는 보호가 필요하다고 생각하지만 SSSD와 함께 사용할 유틸리티가 있다는 것을 왜 인식하지 못하는 걸까요?
- 버그를 보고하고 로컬 정책 모듈을 만들어야 합니까? 아니면 다른 것을 만들어야 합니까?
- 이 문제를 일으킨 트랜잭션을 취소하고 더 작은 그룹으로 패키지를 업데이트해야 합니까? 문제가 해결되나요?
- 이로 인해 위에서 언급한 속도 저하 문제가 발생합니까? 가상 머신 작업(특히 VirtualBox에서 스토리지 확장)을 통해 오래된 항목을 유지하면
/etc/fstab
시스템이 존재하지 않는 항목을 찾기 때문에 시작 속도가 느려질 수 있다는 것을 알고 있습니다 . 여기서도 비슷한 일이 일어나고 있나요?
추가 정보 없이 화면에 나오는 단어만 따르고 싶지 않습니다. 나도 모르게 분화구에 반창고를 붙이고 싶지는 않습니다.
(요청 시 추가 정보): 다음을 명시해야 합니다: /var/lib/sss/db/
디렉토리입니다.
ls -Z /var/lib/sss/
출력 db/
:system_u:object_r:sssd_var_lib_t:s0
다음에서 발췌 audit.log
(관련된 두 줄 사이에 끼워진 관련 없는 줄 포함):
type=AVC msg=audit(1543865969.237:241): avc: denied { write } for pid=18065 comm="sss_cache" name="db" dev="sdb2" ino=787765 scontext=system_u:system_r:groupadd_t:s0 tcontext=system_u:object_r:sssd_var_lib_t:s0 tclass=dir permissive=0
type=GRP_MGMT msg=audit(1543865969.239:242): pid=18062 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:groupadd_t:s0 msg='op=modify-group acct="rpcuser" exe="/usr/sbin/groupmod" hostname=? addr=? terminal=? res=success'
type=AVC msg=audit(1543865969.264:243): avc: denied { write } for pid=18067 comm="sss_cache" name="db" dev="sdb2" ino=787765 scontext=system_u:system_r:groupadd_t:s0 tcontext=system_u:object_r:sssd_var_lib_t:s0 tclass=dir permissive=0
출력 ls -Z /usr/sbin/sss_cache
(찾은 위치를 통해 which sss_cache
):
system_u:object_r:bin_t:s0
답변1
좋다실수Fedora의 SELinux 정책.
audit2allow
생성된 정책이나 버그 리포트의 정책을 사용하여 수정 사항이 릴리스될 때까지 액세스를 허용할 수 있습니다.