50% 할인 모든 플랜, 기간 한정. 시작 가격 $2.48/mo
읽는 데 6분
보안 및 네트워킹

CentOS 7에서 SELinux를 활성화하는 방법 | CentOS 서버 보안 강화

알렉스 로빈스 By 알렉스 로빈스 6분 분량 2023년 5월 30일 업데이트됨
CentOS에서 SELinux 활성화

   보안 취약점과 익스플로잇이 거의 매일 공개되고 사이버 범죄 피해 보고가 늘어나면서, 시스템 보안은 누구에게나 중요한 과제가 되었습니다. 시스템 보안을 강화하는 방법은 여러 가지가 있습니다. CentOS 또는 Fedora 서버를 사용 중이거나 사용할 계획이라면, SELinux가 좋은 출발점이 됩니다. SELinux는 빠르고 강력한 보안 프로토콜이자 애플리케이션으로, 시스템의 파일과 애플리케이션에 대한 사용자 접근 권한을 확인하고 제어하는 데 도움을 줍니다. 이 글에서는 SELinux를 간략히 소개한 뒤, CentOS 7에서 SELinux를 활성화하는 방법을 안내합니다.

SELinux가 무엇인가요?

Security-Enhanced Linux(SELinux)는 Linux 시스템 관리자가 시스템에 접근하는 사용자를 더 세밀하게 제어할 수 있도록 설계된 보안 아키텍처입니다. 원래 미국 국가안보국(NSA)이 Linux Security Modules(LSM)를 활용해 Linux 커널에 적용한 일련의 패치 및 업그레이드로 개발되었습니다. SELinux는 2000년에 오픈소스 도구로 공개되었고, 2003년에 Linux 커널 전체와 통합되었습니다.

SELinux는 어떻게 동작하나요?

SELinux는 시스템의 모든 파일, 프로세스, 애플리케이션에 대한 접근을 제어합니다. 미리 정의된 규칙 집합을 보안 정책으로 활용하여, SELinux는 안전하고 효과적인 접근 정책을 수립할 수 있습니다. SELinux는 시스템을 보호하고 비인가 접근 시도를 차단합니다. 이 방식에서 '최소 권한 원칙'이란, 프로그램 사용자는 파일, 디렉터리, 소켓, 기타 서비스에 접근하기 위해 명시적인 권한을 부여받아야 한다는 의미입니다.

애플리케이션이나 프로세스(이하 '주체')가 파일(객체)에 대한 접근을 요청하면, SELinux는 Access Vector Cache(AVC)를 통해 해당 접근을 평가합니다. AVC는 주체와 객체, 즉 프로세스와 그 접근 대상에 대한 권한 캐시를 저장합니다. 저장된 권한 캐시가 없으면 SELinux는 판단을 내릴 수 없습니다. 이 경우 SELinux는 보안 서버에 접속해 접근 요청 평가에 필요한 정보를 요청합니다. 보안 서버는 SELinux 정책을 적용해 접근을 평가한 뒤, 그 결과에 따라 요청을 허용하거나 거부합니다. "/var/log.messages"의 메시지 로그를 확인하면 어떤 요청이 허용되거나 거부되었는지 언제든 확인할 수 있습니다.

SELinux 모드에는 어떤 것들이 있나요?

SELinux는 관리자가 다음 세 가지 모드 중 하나로 동작 방식을 설정할 수 있습니다. 각 모드는 보안 제한 수준과 용도가 다릅니다.

적용 모드: 기본 모드로, 정책 기준을 충족하지 않는 작업을 차단하고 기록합니다.

관대 모드: 로그와 이벤트를 상세하게 다룰 수 있는 모드입니다. SELinux 기능을 테스트할 때 특히 유용합니다. 강제(Enforcing) 모드와 허용(Permissive) 모드 간 전환 시 시스템 재부팅이 필요하지 않습니다. 

비활성화된 모드: 모든 작업을 수행할 수 있으며 작업이 기록되지 않습니다. 이 모드로 전환하려면 시스템 재부팅이 필요합니다.

 

CentOS 7에서 SElinux를 활성화하는 방법 

  • SELinux 상태 확인 :

1단계: SELinux 활성화 여부 확인

SELinux를 활성화하기 전에 이미 비활성화되어 있는지 먼저 확인하세요. 

터미널에서 다음 명령어를 입력해 설정을 확인하세요:

sestatus

출력 결과를 통해 현재 시스템에서 SELinux가 비활성화되어 있음을 확인할 수 있습니다.

SELinux 비활성화

2단계: SELinux 활성화를 위한 요구 사항 확인

  • sudo 권한이 있는 사용자 계정
  • 터미널/콘솔 접속
  • CentOS 7 기반의 RHEL 계열 시스템
  • 텍스트 편집기 도구 nano

linux-vps Linux 호스팅, 간편하게

웹사이트나 웹 앱을 더 좋은 환경에서 호스팅하고 싶으신가요? 새로운 것을 개발 중이신가요? 아니면 단순히 Windows가 마음에 들지 않으신가요? 바로 그래서 저희가 Linux VPS를 제공합니다.

Linux VPS 시작하기

  • SELinux 시작 중 :

3단계: nano 편집기로 설정 파일 열기

서비스의 SELinux 상태를 설정하세요. 이동 경로:  /etc/selinux/config 파일을 열고 Nano 같은 텍스트 편집기를 사용하세요.

sudo nano /etc/selinux/config

 

4단계: SELinux 모드 변경

이제 SELinux 모드를 다음 중 하나로 변경할 수 있습니다: 허용적인 or enforcing.

여기서 표시된 줄을 원하는 모드로 변경할 수 있습니다.

SELinux 상태

 

5단계: 변경 사항 저장

그다음 누르세요 CTRL + X 적용 후 저장하려면 누르세요. 그런 다음 y, 그러면 Enter 전체 과정을 확인하려면

 

6단계: 서버 재부팅

이제 시스템을 재부팅해야 합니다. 아래 명령어를 입력한 후 <Enter>를 누르세요:

sudo reboot

7단계: SELinux 상태 재확인

SELinux의 상태를 확인하려면 ""을 입력하세요상태  다시 커맨드 라인에서.

이제 시스템에서 강제 모드가 활성화된 것을 확인할 수 있습니다.

SELinux 활성화

CentOS 7에서 SELinux를 비활성화하는 방법 

아래 명령어를 실행하면 SELinux 모드를 일시적으로 targeted에서 permissive로 전환할 수 있습니다:

sudo setenforce 

하지만 이 변경 사항은 현재 실행 세션에만 적용된다는 점에 주의하세요.

CentOS 7 시스템에서 SELinux를 영구적으로 비활성화하려면 다음 단계를 따르세요:

 

1단계: SELinux 모드를 "disabled"로 설정

Open the /etc/selinux/config file, then you should set the SELINUX mode to “disabled”

2단계: 변경 사항 저장 및 재부팅

파일을 저장한 후 다음 명령어로 CentOS 시스템을 재부팅하세요:

 sudo shutdown -r now

3단계: SELinux 상태 재확인

시스템이 부팅될 때, 다음 명령어를 실행하여 변경 사항을 확인하세요. sestatus 명령:

 sestatus

SELinux 모드 변경 방법 

 

SELinux를 완전히 비활성화하는 대신, 모드를 허용(permissive)으로 변경합니다. 수행된 작업은 로그 파일에 기록됩니다. 

SELinux 모드를 전환하려면 아래 단계를 따르세요. enforcing to 허용적인 타입:

sudo setenforce 0

이제 enforcing 모드를 활성화해야 합니다. 아래 명령어를 입력하세요:

sudo setenforce 1

이 변경 사항은 현재 세션에서만 유효합니다. 시스템을 재부팅하면 기본값으로 돌아갑니다. 변경 사항을 영구적으로 적용하려면 텍스트 편집기(예: nano예를 들어). 

linux-vps Linux 호스팅, 간편하게

웹사이트나 웹 앱을 더 좋은 환경에서 호스팅하고 싶으신가요? 새로운 것을 개발 중이신가요? 아니면 단순히 Windows가 마음에 들지 않으신가요? 바로 그래서 저희가 Linux VPS를 제공합니다.

Linux VPS 시작하기

SELinux를 넘어선 CentOS 7 서버 보안 강화

CentOS 7에 SELinux를 설치했으니 이제 시스템 보안이 이전보다 강화되었습니다. 물론 어떤 시스템도 완벽하게 안전하다고 보장할 수는 없습니다. 항상 추가로 할 수 있는 작업이 있습니다. 예를 들어 이 Linux VPS 보안 가이드를 참고해 보세요. 사실 SELinux를 사용하더라도 여기서는 기본적인 보안 설정만 다뤘습니다. 더 나아가, 아무리 철저한 보안 설정을 갖춰도 서버 호스팅 제공업체의 보안이 취약하다면 아무 소용이 없습니다. 그래서 Cloudzy는 하드웨어 및 AI 기반 방화벽, 지능형 DDoS 보호, 그 밖의 자체 보안 기술을 통해 최고 수준의 보안을 유지합니다. CentOS VPS 솔루션 을 통해 진정으로 안전한 서버를 운영하세요.

 

공유

블로그 더 보기

계속 읽기.

노트북이 빛나는 파란색과 금색 디지털 터널과 방패 아이콘을 통해 서버 랙에 연결되는 모습을 보여주는 MikroTik L2TP VPN 가이드의 Cloudzy 타이틀 이미지.
보안 및 네트워킹

MikroTik L2TP VPN 설정 (IPsec 포함): RouterOS 가이드 (2026)

이 MikroTik L2TP VPN 설정에서 L2TP는 터널링을 담당하고 IPsec은 암호화와 무결성을 담당합니다. 두 가지를 함께 사용하면 서드파티 없이도 네이티브 클라이언트 호환성을 확보할 수 있습니다.

렉사 사이러스렉사 사이러스 9분 분량
어두운 청록색 배경에 원격 호스트 식별 변경 경고 메시지와 수정 가이드 제목, Cloudzy 브랜딩이 표시된 SSH 터미널 화면.
보안 및 네트워킹

경고: 원격 호스트 식별이 변경되었습니다 - 수정 방법

SSH는 시스템 간에 암호화된 터널을 생성하는 보안 네트워크 프로토콜입니다. GUI 없이도 컴퓨터에 원격으로 접속해야 하는 개발자들 사이에서 꾸준히 사용되고 있습니다.

렉사 사이러스렉사 사이러스 읽는 데 10분
어두운 배경에 경고 기호와 파란색 서버가 있는 Linux 이름 확인 오류 관련 DNS 서버 문제 해결 가이드 일러스트
보안 및 네트워킹

이름 확인 임시 실패: 원인과 해결 방법

Linux를 사용하다 보면 웹사이트 접속, 패키지 업데이트, 인터넷 연결이 필요한 작업 실행 시 이름 확인 임시 실패 오류가 발생할 수 있습니다.

렉사 사이러스렉사 사이러스 읽는 데 12분

배포할 준비가 됐나요? 월 $2.48부터.

2008년부터 운영해온 독립 클라우드. AMD EPYC, NVMe, 40 Gbps. 14일 환불 보장.