selinux 요약 > IT 기술백서

IT 기술백서

직접 알아내거나 검색하기 귀찮아서 모아 둔 것

Server | selinux 요약

본문

현재 상태 보기

# sestatus



모드 전환

setenforce 1 or 0

1: enforce mode (차단)

2: permissive mode (경고만 내보냄)



selinux 비활성화 하기

vim /etc/selinux/config

SELINUX=disabled



보안문맥 (Security Context)

사용자:역할:타입:레벨

예) unconfined_u:object_r:user_home_t:s0


사용자: 시스템의 사용자와 별도의 selinux 사용자

역할: 하나이상의 타입과 연결되어 selinux 사용자의 접근을 허용할지 결정하는데 사용

타입: 프로세스의 도메인이나 파일의 타입을 지정하고 이를 기반으로 접근통제 (가장중요)

레벨: 더 강력한 보안이 필요할때 (고급사용자용 몰라도 됨)



보안문맥 관련 유틸리티

설치

yum install setools-console


seinfo

:요약보기


  seinfo -adomain -x

  :전체도메인


  sesearch

  :정책에서 지정한 롤을 조회


sesearch --role_allow -t httpd_sys_content_t

: httpd_sys_content_t 객체에 접근할 수 있는 롤 그룹 표시


  sesearch --allow -s httpd_t

  httpd_t context 에 허용된 액션 보기


  예) allow httpd_t httpd_sys_content_t : file { ioctl read getattr lock open } ; 

  httpd_sys_content_t 는 ioctl, read, getattr, lock, open 의 시스템 콜을 사용할 수 있다는 뜻



semanagehttpd_t httpd_sys_content_t

 : 보안정책을 조회하고 추가/변경/삭제할 수 있는 유틸리티

 설치

 yum install -y policycoreutils-python

 

 포트 컨텍스트 조회 | http_port_t 만

 semanage port -l | grep http_port_t

 

 http_port_t 에 포트 추가 

 semanage port -a -p tcp -t http_port_t 포트번호

 : 이미 할당된 포트가 있을때 -a 대신 수정옵션 -m 사용

 

 http_port_t 에 포트 삭제

 semanage port -d -p tcp -t http_port_t 포트번호

 

 파일 컨텍스트 조회

 semanage fcontext -l|grep httpd_sys_content_t

 

 특정디렉터리 하위에 httpd_sys_content_t 모두 추가

 semanage fcontext -a -t httpd_sys_content_t "/opt/mycontent(/.*)?"

 

 

문제해결


audit2why

: audit.log 를 분석해 문제해결법을 알려줌 (간단하게)

  사용법)

  audit2why < /var/log/audit/audit.log

  


sealert

: 가장 자세히 보여주는 분석유틸

설치)

yum install setroubleshoot-server


사용법)

sealert -a /var/log/audit/audit.log 

 

정책문제 때문에 파일이 실행되지 않을때

 

 

audit2allow -w -a

: 문제를 확인한다 ( -w: why ) 

 

audit2allow -a

: 문제를 해결하기 위한 허용정책만 보기 위한 명령

 

audit2allow -a -M 파일명

: 파일명.te (소스) 와 파일명.pp (컴파일본) 가 생성된다.

 

semodule -i 파일명.pp

: 생성된 정책을 자동으로 설치하고 반영한다. 

 

 


댓글 0개

등록된 댓글이 없습니다.

Menu