본문 바로가기

Linux & Unix

SELinux & AppArmor 기본 개념

================================================================
* 보안모델
- DAC (임의접근제어, Discretionary Access Control)
     : 소유자가 사용자 또는 그룹이 자원에 접근하는 것을 조절 (소유자 자유재량)
     : 주체(소유자)가 객체(파일)를 제어
     : 계정과 소유권에만 기반
- MAC (강제접근제어, Mandatory Access Control)
     : 정의된 정책을 활용해 사용자와 프로세스의 행동을 제어
     : 파일의 유형, 사용자의 역할, 프로그램의 기능과 신뢰도, 데이터의 민감성과 무결성 고려
================================================================

--------------------------------------------------------------------------------------------------
* SELinux
- Security-Enhanced Linux 의 줄임
- 레드햇 계열 (RHEL, Fedora, CentOS)
- MAC 적용 (전통적인 Linux 는 DAC)
- 시스템 전체에 보안 설정

SELinux 사용 개념
- 대상 (사용자, 응용프로그램, 프로세스 등) -> 주체 (subject)
- 개체 (파일 및 소켓, 디렉토리, 장치) -> 객체 (object)
- 레이블 (객체에 붙는 메타데이터)  -> 확장된 속성을 지원하는 파일 시스템 필요
- 정책 (대상과 객체에 대한 접근 권한 구조를 정의)
--------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------
* AppArmor
- Application Armor 의 줄임
- SUSE 계열 (SUSE Linux), 데비안 계열(Debian, Ubuntu)
MAC 적용 (전통적인 Linux 는 DAC)
- 개별 응응프로그램을 보호하는 일에 집중, 응용프로그램 단위의 보안 모델 구현
--------------------------------------------------------------------------------------------------