SELinux 개념
리눅스는 마이크로스프트 운영체제와는 다르게 오픈소스로 보안에 많이 취약하다는 평을 받았는데요. 이때 도입된 것이 바로 SELinux입니다. SELinux는 리눅스 보안을 위해 강화해주는 보안 커널입니다. Linux 시스템용 보안 아키텍처인데요. zero-day, buffer overflow 등의 공격을 방지 해주며 각종 해킹을 방지해줍니다.
SELinux 동작 확인
SELinux는 enforce, permissive, disable 세 가지 모드가 존재합니다. 레드햇 계열의 CentOS는 이 중 enforce로 작동됩니다. 터미널 창에 다음과 같이 입력하여 SELinux 활성화가 되어있는지 확인합니다.
활성화 상태
[[email protected] ~]# $ sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 24
Policy from config file: targetedS
비활성화 상태
[[email protected] ~]# $ sestatus
SELinux status: disabled
SELinux 해제
※ 인터넷에 연결된 리눅스의 경우 SELinux 해제를 추천하지 않습니다.
필자는 SELinux 해제를 하는 것 보다 iptables나 firewalld 같은 방화벽 데몬을 사용하는 것을 추천드립니다.
다만, 부득이하게 해제를 해야 하는 경우 다음과 같이 따라하시길 바랍니다.
1. vi 편집기를 이용하여 SELinux 설정 파일을 들어갑니다.
[[email protected] ~]# $ vi /etc/sysconfig/selinux
SELINUX=enforcing
2. SELiux=enforcing로 되어있는 것을 disabled로 수정합니다.
다음과 같은 명령어를 입력하여 SELinux를 재부팅하면 정상적으로 비활성화가 되는 것을 볼 수 있습니다.
[[email protected] ~]# $ getenforce
Disabled