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