6.4. MLS에서 사용자 명확한 설정
SELinux 정책을 MLS로 전환한 후에는 제한된 SELinux 사용자에게 매핑하여 보안 명확한 수준을 사용자에게 할당해야 합니다. 기본적으로 지정된 보안 명확한 사용자가 있습니다.
- 민감도 수준이 높은 개체를 읽을 수 없습니다.
- 다른 민감도 수준에서 오브젝트에 쓸 수 없습니다.
사전 요구 사항
-
SELinux 정책은
mls
로 설정됩니다. -
SELinux 모드는
강제
모드로 설정되어 있습니다. -
policycoreutils-python-utils
패키지가 설치됩니다. SELinux 제한 사용자에게 할당된 사용자:
-
user_u
에 할당된 권한이 없는 사용자의 경우 다음 절차의example_user 입니다. -
권한이 있는 사용자의 경우
staff_u
(다음 절차의담당자 )에 할당되었습니다.
-
MLS 정책이 활성화되었을 때 사용자가 생성되었는지 확인합니다. 다른 SELinux 정책에서 생성된 사용자는 MLS에서 사용할 수 없습니다.
절차
선택 사항: SELinux 정책에 오류를 추가하지 않도록 하려면
허용
SELinux 모드로 전환하여 문제 해결에 도움이 됩니다.# setenforce 0
허용 모드에서 SELinux는 활성 정책을 적용하지 않지만 문제 해결 및 디버깅에 사용할 수 있는 AVC(Access Vector Cache) 메시지만 기록합니다.
staff_u
SELinux 사용자의 명확한 범위를 정의합니다. 예를 들어 이 명령은 s1에서s1
로 clearance 범위를 설정하고s1
은 기본 명확한 수준입니다.# semanage user -m -L s1 -r s1-s15 staff_u
사용자 홈 디렉터리에 대한 SELinux 파일 컨텍스트 구성 항목을 생성합니다.
# genhomedircon
파일 보안 컨텍스트를 기본값으로 복원합니다.
# restorecon -R -F -v /home/ Relabeled /home/staff from staff_u:object_r:user_home_dir_t:s0 to staff_u:object_r:user_home_dir_t:s1 Relabeled /home/staff/.bash_logout from staff_u:object_r:user_home_t:s0 to staff_u:object_r:user_home_t:s1 Relabeled /home/staff/.bash_profile from staff_u:object_r:user_home_t:s0 to staff_u:object_r:user_home_t:s1 Relabeled /home/staff/.bashrc from staff_u:object_r:user_home_t:s0 to staff_u:object_r:user_home_t:s1
사용자에게 명확한 수준을 할당합니다.
# semanage login -m -r s1 example_user
여기서
s1
은 사용자에게 할당된 명확한 수준입니다.사용자의 홈 디렉터리의 레이블을 사용자의 명확한 수준으로 다시 지정합니다.
# chcon -R -l s1 /home/example_user
선택 사항: 이전에
허용
SELinux 모드로 전환한 후 모든 항목이 예상대로 작동하는지 확인한 후강제
SELinux 모드로 다시 전환합니다.# setenforce 1
검증
사용자가 올바른 SELinux 사용자에게 매핑되고 올바른 명확한 수준이 할당되어 있는지 확인합니다.
# semanage login -l Login Name SELinux User MLS/MCS Range Service __default__ user_u s0-s0 * example_user user_u s1 * …
- MLS 내에서 사용자로 로그인합니다.
사용자의 보안 수준이 올바르게 작동하는지 확인합니다.
주의확인에 사용하는 파일에는 구성이 올바르지 않은 경우 중요한 정보가 포함되어 있지 않아야 하며 사용자가 실제로 권한 부여 없이 파일에 액세스할 수 있습니다.
- 사용자가 더 높은 수준의 민감도를 가진 파일을 읽을 수 없는지 확인합니다.
- 사용자가 동일한 민감도로 파일에 쓸 수 있는지 확인합니다.
- 사용자가 낮은 수준의 민감도를 사용하여 파일을 읽을 수 있는지 확인합니다.