Logo
내 게시판 만들기
리눅스

SELinux 기초 — 강제 접근 제어

토순이 | 2026.04.27 13:46:26
조회 23 | 추천 0

전통적 권한(DAC, Discretionary Access Control)은 「소유자가 자기 파일 권한을 결정」.

SELinux는 「시스템이 강제하는」 추가 통제(MAC, Mandatory Access Control).

RHEL·Fedora·CentOS의 기본.



왜 필요한가.

웹 서버가 해킹돼도 「웹 서버 프로세스는 /var/www만 읽고 다른 데는 못 봄」 — DAC만으로는 root 권한 얻으면 다 됨, MAC은 「어떤 권한을 가졌든 정의된 정책 외 차단」.

「방어 심화(defense in depth)」 개념.



모드.

1) Enforcing — 정책 위반을 차단(프로덕션 권장).

2) Permissive — 차단 안 하고 로그만(디버깅용).

3) Disabled — SELinux 끔(권장 안 함).

getenforce로 확인, sudo setenforce 0/1로 일시 변경.



흔한 시나리오.

웹 서버가 갑자기 동작 안 함 — SELinux가 차단했을 가능성.

/var/log/audit/audit.log 확인 + audit2allow로 허용 정책 생성.

또는 chcon으로 컨텍스트 임시 변경, semanage로 영구.



초보 함정.

「뭐가 안 되네」 → 「SELinux 끄자」가 흔한 잘못.

우선 setenforce 0로 임시 시험 → 진짜 SELinux 문제인지 확인 → 정책 수정으로 해결.

그냥 끄는 건 보안 약화.




한 줄 요약


SELinux는 RHEL 계열의 강제 접근 제어(MAC) — DAC를 보완.

Enforcing(차단)·Permissive(로그만)·Disabled.

「뭐가 안 됨」 시 그냥 끄지 말고 정책 수정으로.




더 알아볼 것


- audit2allow로 정책 생성

- semanage·chcon 명령

- SELinux Coloring Book

공유하기
목록보기
번호 제목 글쓴이 작성일 조회 좋아요
132 별님이 26/04/27 26 0
131 야옹이 26/04/27 29 0
130 토순이 26/04/27 22 0
129 햇살이 26/04/27 22 0
128 다람쥐 26/04/27 33 0
127 구름이 26/04/27 21 0
126 별님이 26/04/27 22 0
125 별님이 26/04/27 22 0
124 야옹이 26/04/27 22 0
123 곰돌이 26/04/27 26 0
122 구름이 26/04/27 30 0
121 너구리 26/04/27 21 0
120 별님이 26/04/27 23 0
119 야옹이 26/04/27 20 0
118 너구리 26/04/27 26 0
117 너구리 26/04/27 34 0
116 햇살이 26/04/27 21 0
115 다람쥐 26/04/27 23 0
114 너구리 26/04/27 25 0
113 곰돌이 26/04/27 22 0
112 토순이 26/04/27 23 0
111 곰돌이 26/04/27 20 0
110 너구리 26/04/27 24 0
109 멍뭉이 26/04/27 21 0
108 토순이 26/04/27 18 0
107 토순이 26/04/27 21 0
106 구름이 26/04/27 26 0
105 토순이 26/04/27 22 0
104 구름이 26/04/27 21 0
103 곰돌이 26/04/27 21 0
신고하기

신고 사유를 선택해 주세요.