4.4. 권한이 없는 SELinux 사용자의 비표준 공유 디렉터리에 대한 액세스 관리
해당 SELinux 파일 유형을 찾고 매핑하여 권한이 없는 일반 SELinux 사용자 user_u 에 대해 비표준 공유 디렉터리에 대한 액세스를 구성할 수 있습니다. user_u 사용자에게는 기본 역할 user_r 및 기본 도메인 user_t 가 있습니다.
사전 요구 사항
-
selinux-policy-doc및setools-console패키지가 시스템에 설치되어 있습니다.
프로세스
터미널에서
user_selinux(8)도움말 페이지를 엽니다.man user_selinux
$ man user_selinuxCopy to Clipboard Copied! Toggle word wrap Toggle overflow MANAGED FILES섹션에서 시나리오에 해당하는 특성 또는 유형을 찾습니다. 예를 들어user_home_type속성은 다음과 같습니다.선택 사항: 속성에 할당된 모든 유형을 나열하려면
-x및-a옵션과 함께seinfo명령을 사용합니다.seinfo -x -a user_home_type
$ seinfo -x -a user_home_type Type Attributes: 1 attribute user_home_type; … chrome_sandbox_home_t config_home_t cvs_home_t data_home_t dbus_home_t fetchmail_home_t gconf_home_t git_user_content_t …Copy to Clipboard Copied! Toggle word wrap Toggle overflow 해당 유형에 대한 후보를 확인한 후 이 예제의
data_home_t유형은 SELinux 매핑을 확인합니다.semanage fcontext -l | grep data_home_t
$ semanage fcontext -l | grep data_home_t … /root/\.local/share(/.*)? all files system_u:object_r:data_home_t:s0 …Copy to Clipboard Copied! Toggle word wrap Toggle overflow user_u에서 액세스할 수 있도록 할 해당 유형을/shared-data와 같이 매핑합니다.semanage fcontext -a -t data_home_t '/shared-data(/.*)?'
$ semanage fcontext -a -t data_home_t '/shared-data(/.*)?'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
구성한 디렉터리의 매핑을 확인합니다.
semanage fcontext -l | grep "shared-data"
# semanage fcontext -l | grep "shared-data" /shared-data(/.*)? all files system_u:object_r:data_home_t:s0Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
user_uSELinux 사용자에게 매핑된 Linux 사용자로 로그인하고 디렉터리에 액세스할 수 있는지 확인합니다.