Linux_SELinux(Security Enhanced Linux)

lil·2023년 2월 11일
0

LinuxServiceAdmin

목록 보기
3/4

SELinux? 프로세스가 파일, 디렉토리, 포트에 액세스할 수 있는지 결정하는 보안 규칙의 집합

SELinux 모드

● Enforcing(강제) : 엑세스 제어(0) + 로깅(0)SELinux 액세스 제어 규칙이 적용되고 있고, 일반적인 기본모드이다.
● Permissive(허용) : 엑세스 제어(X) + 로깅(0)SELinux가 활성화 되어 있지만, 액세스 제어 규칙을 적용하는 대신 규칙이 위반되었다는 경고를 기록한다. 이 모드는 주로 테스트 및 문제 해결에 사용된다.
● Disabled(비활성화됨) : SELinux가 완전히 꺼져 있는 상태이다. SELinux 위반이 거부되거나 기록되지 않는다.

SELinux Context

# semanage fcontext -l #검색
# semanage fcontext -a -t httpd_sys_content_t '/virtual(/.*)?' #파일 등록
# restorecon -R /virtual #파일 적용

SELinux Boolean

# semanage boolean -l #검색
# setsebool -P httpd_enable_homedirs on/off

SELinux Port

# semanage port -l
# semanage port -a(추가) -t(타입) http_port_t -p(프로토콜) tcp 8888
# semanage port -d ...

SELinux TroubleShooting

(ㄱ) 문제 원인 파악
# cat /var/log/messages | grep -i preventing
# sealert -l UUID

or

# cat /var/log/audit/audit.log | grep -i 'avc:  denied'
# sealert -a /var/log/audit/audit.log

(ㄴ) 문제해결 방법
* SELinux context 문제 일 수도 있고
* SELinux boolean 문제 일 수도 있고
* SELinux port 문제 일 수도 있고
셋다 아니면 버그 가능성이 높다.

0개의 댓글