CentOS SELinux 설정

CentOS

SELinux (Security-Enhanced Linux)는 CentOS 및 다른 리눅스 배포판에서 기본적으로 활성화된 보안 기능입니다. SELinux는 기본적으로 모든 프로세스 및 파일에 대한 접근 권한을 강화하여 시스템의 안정성을 향상시킵니다. 이번 블로그 게시물에서는 CentOS에서 SELinux를 설정, 확인, 해제하는 방법에 대해 간략하게 알아보겠습니다.

SELinux 상태 확인하기

SELinux의 상태를 확인하는 가장 간단한 방법은 sestatus 명령어를 사용하는 것입니다. 다음 명령어를 터미널에서 실행하여 SELinux의 현재 상태를 확인할 수 있습니다.

sestatus

위의 명령을 실행하면 다음과 같은 출력을 볼 수 있습니다.

SELinux status:                enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:        /etc/selinux
Loaded policy name:            targeted
Current mode:                enforcing
Mode from config file:        enforcing
Policy MLS status:              enabled
Policy deny_unknown status:    allowed
Max kernel policy version:    31

위의 출력에서 SELinux status: enabled는 SELinux가 활성화된 상태임을 나타냅니다. Current mode: enforcing은 현재 SELinux 모드가 적용되고 있음을 의미합니다.

SELinux 모드 변경하기

SELinux 모드를 변경하려면 /etc/selinux/config 파일을 편집해야 합니다. 다음 명령어를 사용하여 파일을 열어보겠습니다.

sudo vi /etc/selinux/config

위 명령어를 실행하면 vi 편집기로 /etc/selinux/config 파일이 열립니다. 파일의 내용 중 다음 라인을 찾아 수정합니다.

SELINUX=enforcing

이 라인을 다음과 같이 수정하여 SELinux 모드를 변경할 수 있습니다.

수정이 완료되면 파일을 저장하고 닫습니다. 변경 사항을 적용하기 위해 시스템을 재부팅해야 할 수도 있습니다.

SELinux 제한 해제하기

SELinux의 제한을 일시적으로 해제하려면 setenforce 명령어를 사용할 수 있습니다. 다음 명령어를 실행하여 SELinux를 제한 해제합니다.

sudo setenforce 0

위 명령어를 실행하면 SELinux의 제한이 해제됩니다 (permissive 모드). 이 변경은 재부팅 후에는 유지되지 않습니다.

SELinux 제한 활성화하기

SELinux의 제한을 다시 활성화하려면 setenforce 명령어를 사용합니다. 다음 명령어를 실행하여 SELinux를 제한 활성화합니다.

sudo setenforce 1

위 명령어를 실행하면 SELinux의 제한이 활성화됩니다 (enforcing 모드). 이 변경은 재부팅 후에도 유지됩니다.

SELinux 설정 요약

SELinux는 시스템의 보안을 강화하는 중요한 기능이지만, 잘못된 설정이나 정책 오류로 인해 애플리케이션 동작에 문제가 발생할 수 있습니다. SELinux를 원활하게 사용하기 위해서는 적절한 정책을 설정하고, 애플리케이션에 대한 예외 규칙을 추가하는 것이 중요합니다.