본문 바로가기
IT운영/리눅스

리눅스 SELinux 영구적 비활성화, 임시 비활성화 방법

by Torobeen 2023. 3. 4.
반응형

SELinux는 Security-Enhanced Linux의 약자로, 리눅스에서 보안을 강화하기 위해 커널 수준에서 동작하는 보안 모듈이다. SELinux는 어떤 프로세스가 어떤 작업을 수행할 수 있는지를 엄격하게 제어하며, 이를 통해 시스템의 전반적인 보안을 강화한다.

 

SELinux를 끄는 작업은 일반적으로는 보안 상 권고하지 않는 작업이다. 하지만 리눅스 초기 세팅 시에는 작업자가 시스템의 권한을 제어하고, 세팅 작업을 원활하게 하기 위해서 임시로 끄는 경우가 있다. 물론 작업이 완료되면 다시 활성화하고 SELinux가 제대로 실행되고 있는지 확인해야 한다.

 

아래 테스트한 OS는 CentOS 8버전이다.


1. SELinux 상태 확인

# sestatus

또는

# getenforce

 

selinux확인

 

selinux상세

getenforce는 현재 SELinux의 모드를 간략하게 출력해주며, sestatus는 더 상세하게 볼 수 있는 명령어다.

 

SELinux의 모드는 Enforcing, Permissive, Disabled 이렇게 총 3가지가 있다. Enforcing은 보안 정책을 엄격하게 적용하여 시도하려는 작업이 정책을 위반하면 바로 차단하는 것이고, Permissive는 보안 위반 사항을 경고나 로그를 통해 알려주지만 작업을 차단하지는 않는다. 마지막으로 Disabled는 SELinux가 완전히 비활성된 상태이다.

 

2. SELinux 영구적으로 끄기

SELinux를 비활성하는 방법은 2가지가 있다. 하나는 Disable 모드로 전환시켜서 완전히 끄는 방법이고, 또 하나는 Permissive 모드로 전환시키켜서 임시적으로 끄는 방법이다. 임시로 끄는 경우에는 3번 절차를 참고하면 된다.

 

vi로 selinux 설정 파일에 들어간다.

# vi /etc/selinux/config

# vi /etc/sysconfig/selinux (리눅스 7버전 이전일 경우)

 

기본값인 enforcing을 disable로 바꾼다. 아래처럼 주석처리를 해도 된다.

 

selinux-config수정

:wq를 입력하고 저장 후 나온다.

 

getenforce 입력하면 아직 enforcing 모드일 것이다. 재부팅해야 disabled이 적용된다. SELinux를 끄는 작업은 무조건 재부팅이 요구된다.

# reboot

 

재부팅 후 getenforce를 입력하면 Disabled 문자열이 보일 것이다.

 

selinux비활성

 

3. SELinux 임시로 끄기

# setenforce 0

 

이렇게 입력하면 SELinux가 Enforcing 모드에서 Permissive 모드로 전환된다.

 

selinux임시비활성

위 사진에서 보이는 바와 같이 SELinux를 임시로 끄는 경우에는 재부팅이 필요없다.

 

이후 다시 활성하려면 setenforce 1 명령어를 입력하면 된다.

# setenforce 1

 

selinux원복

 

반응형