SELinux 개념과 보안 설정

SELinux(Security-Enhanced Linux)란 보안을 강화하기 위해 개발된 리눅스 커널의 보안 기능 중 하나입니다.

셀리눅스는 컴퓨터 시스템의 보안을 강화하기 위해 NSA(National Security Agency:미국 국가안보국)와 레드햇(Red Hat) 등의 기업과 개발자들이 협력하여 개발했습니다.

zero-day 공격 및 buffer overflow 등 어플리케이션 취약점으로 인한 해킹을 방지해 주는 핵심 구성요소에 속하지만APM 설치 후 사용하는데 오류가 발생하는 등 불편함이 있습니다. 잘 동작하도록 설정을 하면 좋지만 이번에 설정을 끄는 것으로 진행해 보겠습니다.

APM 설치 후 발생하는 오류

록키 리눅스에서 APM 설치 후 아래와 같은 오류가 발생하여 셀리눅스를 끄기로 했습니다.

tail -f error_log
SELinux policy enabled; httpd running as context system_u:system_r:httpd_t:s0

디렉토리에 쓰기 권한이 있지만 아파치 웹서버에서 디렉토리 쓰기를 못하는 경우가 발생해 셀리눅스를 비활성화 해 보겠습니다.

SELinux 끄기

먼저 동작 여부를 확인 후

sestatus

SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 24
Policy from config file: targeted

해제를 진행하겠습니다.

vi /etc/selinux/config

기본 설정 화면에 ‘SELINUX=disabled’로 설정을 변경해 줍니다.

SELINUX=disabled
#SELINUX=enforcing

:wq

저장 후 재부팅 reboot 명령어로 적용하는 방법과 바로 서버에 적용하는 방법이 있습니다.

# 셀리눅스 끄기 #
setenforce 0
# 셀리눅스 상태 값 확인 > Current mode:  permissive
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
Memory protection checking:     actual (secure)
Max kernel policy version:      33
# Current mode: permissivefh 변경 된것을 확인.

# 셀리눅스 켜기 #
setenforce 1
리눅스(펜과 안경)

Similar Posts