Linux 에서 SELinux 활성화 여부 확인 방법

LinuxBeginner
지금 연습하기

소개

이 랩에서는 Linux 시스템에서 SELinux 의 상태와 구성을 확인하는 방법을 배우게 됩니다. SELinux 는 필수 접근 제어 (mandatory access control) 를 제공하는 중요한 보안 메커니즘입니다.

sestatus 명령을 사용하여 현재 SELinux 상태의 요약을 얻고, SELinux 구성 파일 /etc/selinux/config를 검사하여 기본 설정을 이해하며, getenforce 명령을 사용하여 현재 작동 모드를 빠르게 확인할 것입니다. 이러한 단계를 완료함으로써 SELinux 가 활성화되어 있는지 여부와 시스템에서 어떻게 구성되어 있는지 파악하는 기본적인 이해를 얻게 될 것입니다.

sestatus 로 SELinux 상태 확인

이 단계에서는 시스템에서 SELinux 의 상태를 확인하는 방법을 배우게 됩니다. SELinux (Security-Enhanced Linux) 는 프로세스와 리소스에 대한 필수 접근 제어 (MAC, mandatory access control) 를 제공하는 보안 메커니즘입니다. 이는 기존의 임의 접근 제어 (DAC, discretionary access control) 위에 추가적인 보안 계층을 추가합니다.

SELinux 의 현재 상태를 확인하기 위해 sestatus 명령을 사용합니다. 이 명령은 SELinux 구성 및 현재 상태에 대한 요약을 제공합니다.

아직 열려 있지 않다면 터미널을 엽니다. 데스크탑 왼쪽의 Xfce 터미널 아이콘을 클릭하여 터미널을 열 수 있습니다.

이제 터미널에 다음 명령을 입력하고 Enter 키를 누릅니다.

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 version:                 ...
Policy load time:               ...

출력의 중요한 부분을 살펴보겠습니다.

  • SELinux status: 시스템에서 SELinux 가 활성화되었는지 또는 비활성화되었는지를 나타냅니다.
  • Current mode: SELinux 의 현재 작동 모드를 보여줍니다. 일반적인 모드는 enforcing, permissive, disabled입니다.
  • Mode from config file: SELinux 구성 파일 (/etc/selinux/config) 에 설정된 모드를 보여줍니다.

이 출력에서 SELinux status: enabled는 SELinux 가 활성 상태임을 의미하고, Current mode: enforcing은 SELinux 가 보안 정책을 적극적으로 적용하고 있음을 의미합니다.

SELinux 상태를 이해하는 것은 해당 동작을 관리하는 첫 번째 단계입니다.

다음 단계로 진행하려면 계속을 클릭하십시오.

cat /etc/selinux/config로 SELinux 설정 확인

이전 단계에서는 sestatus를 사용하여 SELinux 의 현재 상태를 확인했습니다. 이제 SELinux 의 기본 동작을 결정하는 구성 파일을 살펴보겠습니다.

SELinux 의 주요 구성 파일은 /etc/selinux/config에 있습니다. cat 명령을 사용하여 이 파일의 내용을 볼 수 있습니다. cat 명령은 파일의 내용을 표시하는 데 사용됩니다.

터미널에 다음 명령을 입력하고 Enter 키를 누릅니다.

cat /etc/selinux/config

다음과 유사한 출력을 볼 수 있습니다.

## This file controls the state of SELinux on the system.
## SELINUX= can take one of these three values:
##     enforcing - SELinux security policy is enforced.
##     permissive - SELinux prints warnings instead of enforcing.
##     disabled - No SELinux policy is loaded.
SELINUX=enforcing
## SELINUXTYPE= can take one of these three values:
##     targeted - Targeted processes are protected,
##               for more information see selinux-policy-targeted(8)
##     strict - Full SELinux protection, see selinux-policy(8)
##     mls - Multi-Level Security protection.
SELINUXTYPE=targeted

이 파일은 기본 SELinux 모드 (SELINUX=) 와 정책 유형 (SELINUXTYPE=) 을 구성하는 곳입니다.

  • SELINUX=enforcing: 이 줄은 시스템이 기본적으로 enforcing 모드로 시작하도록 구성되어 있음을 나타냅니다.
  • SELINUXTYPE=targeted: 이 줄은 targeted 정책이 사용됨을 지정합니다. targeted 정책은 가장 일반적이며 특정 시스템 프로세스를 보호합니다.

이 파일의 설정은 일반적으로 시스템이 부팅될 때 적용됩니다. 현재 모드를 일시적으로 변경할 수 있지만 (다음 단계에서 볼 것입니다), /etc/selinux/config에 대한 변경 사항은 완전히 적용하려면 시스템 재부팅이 필요합니다.

구성 파일을 이해하면 시스템의 의도된 SELinux 상태를 확인할 수 있습니다.

다음으로 이동하려면 계속을 클릭하십시오.

getenforce 로 SELinux 모드 확인

이전 단계에서는 sestatus를 사용하여 SELinux 에 대한 자세한 개요를 얻었고, cat /etc/selinux/config를 사용하여 기본 구성을 확인했습니다. 이제 더 간단한 명령인 getenforce를 사용하여 현재 SELinux 모드를 빠르게 확인해 보겠습니다.

getenforce 명령은 SELinux 의 현재 작동 모드만 출력하도록 특별히 설계되었습니다. 이는 sestatus의 전체 출력이 필요 없이 빠르게 확인할 때 유용합니다.

터미널에 다음 명령을 입력하고 Enter 키를 누릅니다.

getenforce

다음과 유사한 출력을 볼 수 있습니다.

Enforcing

출력은 다음 중 하나가 됩니다.

  • Enforcing: SELinux 가 활성 상태이며 정책을 적용하고 있습니다. 정책을 위반하는 모든 작업은 차단됩니다.
  • Permissive: SELinux 가 활성 상태이지만 정책을 적용하지 않습니다. enforcing 모드에서 차단되었을 수 있는 작업에 대한 경고를 기록하지만, 해당 작업이 진행되도록 허용합니다. 이 모드는 테스트 및 문제 해결에 유용합니다.
  • Disabled: SELinux 가 활성 상태가 아니며 정책이 로드되지 않았습니다.

이 경우, 출력 Enforcing은 SELinux 가 현재 enforcing 모드로 실행 중임을 확인하며, 이는 sestatus 명령으로 확인한 내용과 일치합니다.

getenforce 명령은 SELinux 상태를 빠르게 확인하는 데 유용한 도구입니다.

이 랩을 완료하려면 계속을 클릭하십시오.

요약

이 랩에서는 Linux 시스템에서 SELinux 의 상태를 확인하는 방법을 배웠습니다. sestatus 명령을 사용하여 SELinux 구성에 대한 요약을 얻었습니다. 여기에는 SELinux 가 활성화되었는지 여부, 현재 작동 모드 (enforcing, permissive 또는 disabled) 및 구성 파일에 설정된 모드가 포함됩니다.

또한 cat 명령을 사용하여 /etc/selinux/config 파일을 검사하여 SELinux 구성을 확인하는 방법을 배웠습니다. 이 파일은 시스템 부팅 시 적용될 기본 SELinux 모드를 보여줍니다. 마지막으로, getenforce 명령을 사용하여 현재 SELinux 모드를 빠르게 확인했습니다. 이러한 단계는 SELinux 의 현재 상태 및 구성을 이해하는 데 필수적인 방법을 제공합니다.