Solaris 서버에서 마운트된 파일에 대한 SELinux 컨텍스트

Solaris 서버에서 마운트된 파일에 대한 SELinux 컨텍스트

RHEL 6실행하려는 작업이 SELinux로 인해 실패합니다. 문제는 일시적으로 쉽게 해결됩니다 setenforce 0. 그러나 SELinux를 완전히 끄는 것은 나에게 선택 사항이 아닙니다.

문제는 이러한 파일이 이전 Solaris 시스템에서 설치되었으며 로드된 모든 내용의 컨텍스트가system_u:object_r:nfs_t:s0. 이 컴퓨터에서 설치된 몇 개의 파일만 수정하면 됩니다.httpd_sys_content_t.

그러나 그렇게 시도하면 "지원되지 않는 작업". 내가 사용하려는 명령은 다음과 같습니다.

chcon -R -h -t httpd_sys_content_t /path/to/my/stuff

내가 아는 한 이것은 이 서버의 모든 것이 다음과 같이 설치되어 있기 때문입니다.system_u:object_r:nfs_t:s0. Solaris이기 때문에 SELinux와 chcon이 존재하지 않기 때문에 시스템 자체에 들어가서 chcon을 사용할 수 없습니다.

제가 생각할 수 있는 유일한 해결책은 이 시스템에 동일한 소프트웨어를 설치하는 것입니다. 즉, RHEL 6Solaris를 완전히 제거하는 것입니다. 이것이 나의 유일한 선택인지 궁금합니다.

답변1

두 가지 옵션이 있습니다(SELinux 내에서):

1) 다른 모든 실패는 audit2allowSELinux 거부를 허용된 작업으로 변환할 수 있습니다.

2) 내 제안은 SELinux 부울을 활성화하여 객체 httpd_t에 대한 액세스를 허용하는 것입니다.nfs_t

[root@ditirlns02 ~]# getsebool httpd_use_nfs
httpd_use_nfs --> off
[root@ditirlns02 ~]# setsebool -P httpd_use_nfs=1
[root@ditirlns02 ~]# getsebool httpd_use_nfs
httpd_use_nfs --> on
[root@ditirlns02 ~]# 

보안 컨텍스트는 원격 파일 시스템이 마운트된 시스템에 의해 설정되므로 Solaris는 거의 관련이 없습니다. RHEL에서 내보내기를 수행하더라도 NFS 내보내기는 여전히 존재하며 nfs_t이에 대해 수행할 수 있는 작업은 없습니다.

관련 정보