SELinux에서 사용자 및 그룹에 대한 권한을 설정하는 방법은 무엇인가요?
_____A1: SELinux(Security-Enhanced Linux)는 Linux 커널에 통합된 강력한 접근 제어 시스템으로, 프로세스 및 사용자에 대해 세밀한 권한 관리를 가능하게 하여 보안을 강화합니다.
Q2: SELinux에서 사용자와 그룹의 권한 설정은 어떻게 이루어지나요?
A2: SELinux는 전통적인 리눅스 사용자/그룹 권한과는 별도로 SELinux 사용자, 역할, 타입 기반 접근 제어(MAC)를 사용하여 권한을 관리합니다. 사용자 및 그룹에 권한을 설정하려면 SELinux 사용자와 역할을 매핑하고, 관련 정책을 구성해야 합니다.
Q3: SELinux 사용자와 리눅스 사용자는 어떻게 다르나요?
A3: 리눅스 사용자는 시스템 레벨의 사용자 계정을 의미하는 반면, SELinux 사용자는 SELinux 정책에 정의된 보안 주체로, 하나의 리눅스 사용자에 여러 SELinux 사용자가 매핑될 수 있습니다.
Q4: SELinux 사용자 및 역할 관리하는 방법은?
A4:
- `semanage user` 명령어로 SELinux 사용자 추가 및 변경 가능
- `semanage login`으로 리눅스 사용자와 SELinux 사용자 바인딩 설정
- `newrole` 명령어로 현재 SELinux 역할 변경 가능
예:
```bash
SELinux 사용자 목록 확인
semanage user -l
리눅스 사용자 'bob'에 SELinux 사용자 'staff_u' 매핑
semanage login -a -s staff_u bob
SELinux 사용자 추가 (선택적)
semanage user -a -R "staff_r" -r s0 staff_u
```
A5: SELinux는 파일, 프로세스, 포트 등에 보안 컨텍스트(`user:role:type:level`)를 할당하여 접근을 제어합니다. 권한 설정은 주로 정책 작성 및 수정, 컨텍스트 라벨링을 통해 이루어집니다.
- `semanage fcontext`로 파일/디렉터리 유형 지정
- `restorecon`으로 파일 시스템 컨텍스트 재설정
- 정책 커스터마이징으로 세부 권한 설정 가능
예:
```bash
'/data' 디렉터리에 custom_t 타입 지정
semanage fcontext -a -t custom_t "/data(/.*)?"
restorecon -Rv /data
```
Q6: SELinux 권한 조정 시 주의사항은?
A6:
- 기존 정책을 무조건 수정하는 것보다 사용자 정의 정책(module) 작성이 안전
- 권한 부족 문제는 `audit.log`를 참고하여 필요한 권한만 추가하는 것이 권장
- 권한 부여 시 최소 권한 원칙 준수 중요
Q7: SELinux 사용자 및 그룹 권한 설정 요약은?
A7:
1. `semanage login` 으로 리눅스 사용자와 SELinux 사용자 매핑
2. 필요한 SELinux 역할과 사용자(policy user) 설정
3. 보안 컨텍스트(파일 및 프로세스 타입 등) 설정
4. 필요시 사용자정의 정책 작성 및 로드
5. 변경 후 `restorecon` 등으로 컨텍스트 적용 및 테스트
이 과정을 통해 SELinux 환경에서 사용자 및 그룹별 세밀한 권한 관리를 수행할 수 있습니다.
작성자:
이윤아 [비회원]
| 작성일자: 1년 전
2024-12-28 07:21:34
조회수: 172 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
조회수: 172 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.