6.5. MLS에서 정의된 보안 범위 내에서 사용자의 명확한 수준 변경
Multi-Level Security (MLS)의 사용자는 관리자가 할당한 범위 내에서 현재 명확한 수준을 변경할 수 있습니다. 범위의 상한을 초과하거나 범위의 낮은 한도 미만의 수준을 줄일 수 없습니다. 이렇게 하면 예를 들어 민감도 수준을 최고 수준의 명확한 수준으로 늘리지 않고도 낮은 수준의 민감도 파일을 수정할 수 있습니다.
예를 들어, 범위 s1-s3
에 할당된 사용자는 다음과 같습니다.
-
레벨
s1
,s2
,s3
으로 전환할 수 있습니다. -
s1-s2
및s2-s3
범위로 전환할 수 있습니다. -
s0-s3
또는s1-s4
범위로 전환할 수 없습니다.
다른 수준으로 전환하면 다른 명확한 설명이 포함된 새 쉘이 열립니다. 즉, 원래의 명확한 수준으로 돌아가는 것과 동일한 방식으로 돌아갈 수 없습니다. 그러나 exit
를 입력하여 항상 이전 쉘로 돌아갈 수 있습니다.
사전 요구 사항
-
SELinux 정책은
mls
로 설정됩니다. -
SELinux 모드는
enforcing
으로 설정되어 있습니다. - 다양한 MLS clearance 수준에 할당된 사용자로 로그인할 수 있습니다.
절차
보안 터미널에서 사용자로 로그인합니다.
보안 터미널은
/etc/selinux/mls/contexts/securetty_types
파일에 정의되어 있습니다. 기본적으로 콘솔은 보안 터미널이지만 SSH는 그렇지 않습니다.현재 사용자의 보안 컨텍스트를 확인합니다.
$ id -Z user_u:user_r:user_t:s0-s2
이 예에서 사용자는
user_u
SELinux 사용자,user_r
역할,user_t
유형 및 MLS 보안 범위s0-s2
에 할당됩니다.현재 사용자의 보안 컨텍스트를 확인합니다.
$ id -Z user_u:user_r:user_t:s1-s2
사용자 명확한 범위 내에서 다른 보안 명확한 범위로 전환합니다.
$ newrole -l s1
최대 범위가 더 낮거나 할당된 범위와 동일한 모든 범위로 전환할 수 있습니다. 단일 수준 범위를 입력하면 할당된 범위의 하한 제한이 변경됩니다. 예를 들어
s0-s2
범위가 있는 사용자로newrole -l s1
을 입력하는 것은newrole -l s1-s2
를 입력하는 것과 동일합니다.
검증
현재 사용자의 보안 컨텍스트를 표시합니다.
$ id -Z user_u:user_r:user_t:s1-s2
현재 쉘을 종료하여 원래 범위로 이전 쉘로 돌아갑니다.
$ exit
추가 리소스
- MLS에서 사용자 명확한 설정
-
newrole(1)
및securetty_types(5)
시스템의 도움말 페이지