SELinux
둘러보기로 가기
검색하러 가기
SELinux를 정리 한다.
SELinux 개요
SELinux (Security-Enhanced Lunux)은 NSA (National Security Agency, 미국 국가 안보국)에서 개발한 MAC 기안의 보안 커널을 Linux에 이식한 커널 레벨의 보안 모듈 이다.
Access Control (접근 통제)
Object (객체) | 시스템 자원 |
Subject (주체) | 사용자나 프로세스 |
DAC (Discretionary Access Control, 임의 접근 통제)
시스템 객체에 대한 접근을 사용자 또는 그룹을 기준으로 제한 한다.
setuid : 일반 사용자가 root 권한으로 프로그램을 실행할 수 있도록 허용 한다.
ls -alF /usr/bin/passwd find /bin /usr/bin /sbin -perm -4000 -exec ls -ldb {} \;
MAC (Mandatory Access Control, 강제 접근 통제)
미리 정해진 정책과 보안 등급에 의거하여 주체에게 허용된 접근 권한과 객체에게 보여된 허용 등급을 비교하여 접근을 통제 한다.
SELinux 설정
상태 확인
sestatus
[root@manage001 selinux] sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: permissive Mode from config file: disabled Policy MLS status: enabled Policy deny_unknown status: allowed Max kernel policy version: 28
SELinux 강제 설정
setenforce 0
- 0 : disable
SELinux 설정
vi /etc/selinux/config
# enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled