SELinux 문서 원본 보기
←
SELinux
둘러보기로 가기
검색하러 가기
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
이 문서는 편집하거나 다른 명령을 할 수 없도록 보호되어 있습니다.
문서의 원본을 보거나 복사할 수 있습니다.
<span style="line-height: 20.8px;">SELinux (Security-Enhanced Lunux)</span>를 정리 한다. == SELinux 개요 == SELinux (Security-Enhanced Lunux)은 NSA (National Security Agency, 미국 국가 안보국)에서 개발한 MAC 기안의 보안 커널을 Linux에 이식한 커널 레벨의 보안 모듈 이다. https://cloud.githubusercontent.com/assets/404534/12506805/d187db34-c134-11e5-85e3-76a71fd3ea9a.png '''<span style="color:#008000;">Access Control (접근 통제)</span>''' {| border="1" cellspacing="0" cellpadding="1" style="width:100%;" |- | style="text-align: center;" | Object (객체) | 시스템 자원 |- | style="text-align: center;" | Subject (주체) | 사용자나 프로세스 |} <span style="color:#008000;">'''DAC (Discretionary Access Control, 임의 접근 통제)'''</span> 시스템 객체에 대한 접근을 사용자 또는 그룹을 기준으로 제한 한다. setuid : 일반 사용자가 root 권한으로 프로그램을 실행할 수 있도록 허용 한다. <pre>ls -alF /usr/bin/passwd find /bin /usr/bin /sbin -perm -4000 -exec ls -ldb {} \;</pre> <br/><span style="color:#008000;">'''MAC (Mandatory Access Control, 강제 접근 통제)'''</span> 미리 정해진 정책과 보안 등급에 의거하여 주체에게 허용된 접근 권한과 객체에게 보여된 허용 등급을 비교하여 접근을 통제 한다. Security Context (보안 컨텍스트) {| border="1" cellspacing="0" cellpadding="1" style="width:100%;" |- | style="text-align: center;" | User (사용자) | 시스템과는 별도로 SELinx 사용자 |- | style="text-align: center;" | Role (역할) | 하나 이상의 Type과 연결 |- | style="text-align: center;" | Type | TE (Type Enforcement)<br/>프로세스의 도메인이나 파일의 타입을 기반으로 접근 통제를 수행 한다. |- | style="text-align: center;" | Level | MLS (Multi Level System)<br/>강제 접근 통제보다 더 강력한 보안이 필요할 때 사용 한다. |} == SELinux 관리 준비 == SELinux 관리 도구 설치 <pre>yum -y install setools-console</pre> Context 정보 조회 <pre>seinfo seinfo -adomain -x #--- httpd_sys_content_t 객체에 접근할 수 있는 role 표시 sesearch --role_allow -t httpd_sys_content_t #--- Contextㅇ 허용된 action sesearch --allow -s httpd_t </pre> == SELinux 설정 == === 조회 및 상태 확인 === -Z 옵션 <pre style="line-height: 20.8px;">#--- Security Context 확인 : httpd_t [root@cloud-web data] ps -efZ | grep http unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 root 1582 1555 0 23:39 pts/0 00:00:00 grep --color=auto http system_u:system_r:httpd_t:s0 root 5895 1 0 5월20 ? 00:00:13 /usr/sbin/httpd -DFOREGROUND system_u:system_r:httpd_t:s0 apache 26481 5895 0 03:19 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND system_u:system_r:httpd_t:s0 apache 26482 5895 0 03:19 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND system_u:system_r:httpd_t:s0 apache 26483 5895 0 03:19 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND system_u:system_r:httpd_t:s0 apache 26484 5895 0 03:19 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND system_u:system_r:httpd_t:s0 apache 26485 5895 0 03:19 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND system_u:system_r:httpd_t:s0 apache 30046 5895 0 12:54 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND #--- TE (Type Enforcement) 확인 : httpd_sys_content_t [root@cloud-web www] ls -Z /var/www drwxr-xr-x. root root system_u:object_r:httpd_sys_script_exec_t:s0 cgi-bin drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 html</pre> <br/><br/>User (system_u), Role (object_r), Type (httpd_sys_script_exec_t, httpd_sys_content_t), Level (s0) port 확인 <pre>semanage port -l | grep http</pre> sestatus <pre>[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</pre> === SELinux 설정 변경 === SELinux Mode {| border="1" cellspacing="0" cellpadding="1" style="width:100%;" |- ! scope="col" | Mode ! scope="col" | int ! scope="col" | Description |- | style="text-align: center;" | enforce | style="text-align: center;" | 1 | 기본 설정<br/>위반시 차안 |- | style="text-align: center;" | permissive | style="text-align: center;" | 0 | 위반시 경고 메시지를 표시하지만 차단하지 않음 |- | style="text-align: center;" | disable | style="text-align: center;" | <br/> | SELinux를 사용하지 않음 |} setenforce 명령으로 설정 변경 <pre>setenforce 0 #--- permissive mode로 전환 setenforce 1 #--- enforce mode로 전환</pre> vi /etc/selinux/config <pre>SELINUX=disabled</pre> == 참고 문헌 == *[[CentOS|CentOS]] *[[CentOS 7|CentOS 7]] *[https://lesstif.gitbooks.io/web-service-hardening/content/selinux.html https://lesstif.gitbooks.io/web-service-hardening/content/selinux.html]
SELinux
문서로 돌아갑니다.
둘러보기 메뉴
개인 도구
로그인
이름공간
문서
토론
변수
보기
읽기
원본 보기
역사 보기
더 보기
검색
주요 메뉴
오픈소스 컨설팅
오픈소스
오픈소스 라이선스
오픈소스 커뮤니티
오픈소스 종류
오픈소스 현황
오픈소스 한글화
문자셋과 인코딩
Storage
Network
보안
고가용성
모니터링
오픈 API
오픈 서비스
Cloud
BigData
Android
산사랑 노트
둘러보기
인기 문서
최근 수정 문서
모든 문서
모든 분류
임의 문서
위키 사용법
자매 사이트
CMS
오비컨 홈페이지
오비컨 CMS
블로그
데모 - SuiteCRM
산사랑의 Twitter
산사랑의 Facebook
친구 사이트
공개SW 포털
OLIS
한국공개소프트웨어협회
AppCenter 지원본부
OLC
PSEG
개발자 블로그
블로터
개인 메뉴
메뉴 수정
양식함
도구
여기를 가리키는 문서
가리키는 글의 최근 바뀜
특수 문서 목록
문서 정보