보안 강화 리눅스
원저자 | 레드햇, 미국 국가안보국 |
---|---|
발표일 | 1998년 1월 1일 |
안정화 버전 | 3.3
/ 2021년 10월 22일[1] |
저장소 | |
프로그래밍 언어 | C |
운영 체제 | 리눅스 |
종류 | 보안, 리눅스 보안 모듈 (LSM) |
라이선스 | GNU GPL |
상태 | 개발 중 |
웹사이트 | selinuxproject |
보안 강화 리눅스(Security-Enhanced Linux, 간단히 SELinux)는 미국 국방부 스타일의 강제 접근 제어(MAC)를 포함한 접근 제어 보안 정책을 지원하는 매커니즘을 제공하는 리눅스 커널 보안 모듈이다. 다양한 리눅스 배포판에 추가할 수 있는 커널 수정 및 사용자 공간 도구들의 모임이다. 보안 강화 리눅스는 보안 결정 진행을 보안 정책과는 별개로 함과 동시에 보안 정책의 영향을 받는 소프트웨어의 양을 간소화하는 것을 시도하는 구조를 이룬다.[2][3] 보안 강화 리눅스의 기반이 되는 주요 개념들은 미국 국가안보국의 일부 초기 프로젝트들로 거슬러 올라간다.
이 보안 모듈은 2003년 8월 8일 버전 2.6을 기점으로 주류 리눅스 커널에 통합되어 있다.
사용법
[편집]SELinux는 매우 정밀한 상세 설정을 포함하여 어떠한 활동을 시스템이 개별 사용자, 프로세스, 데몬에 허용할 것인지를 잠재적으로 제어할 수 있다. 일반적으로 사용자 프로세스는 주로 SELinux에 제한되지 않는 영역에서 실행되지만 고전적인 리눅스 접근 권한에 제한을 받는다.
명령 줄 유틸리티는 다음을 포함한다:
chcon
,[4]
restorecon
,[5]
restorecond
,[6]
runcon
,[7]
secon
,[8]
fixfiles
,[9]
setfiles
,[10]
load policy
,[11]
booleans
,[12]
getsebool
,[13]
setsebool
,[14]
togglesebool
[15]
setenforce
,
load policy
,
setfiles
,[16]
semodule
,
postfix-nochroot
,
check-selinux-installation
,
semodule package
,
checkmodule
,
selinux-config-enforcing
,[17]
selinuxenabled
,[18]
selinux-policy-upgrade
,[19]
security set boolean
.[20]
사용 예
[편집]SELinux를 강제 모드로 설정하는 방법:
$ sudo setenforce 1
SELinux 상태를 확인하는 방법:
$ getenforce
기타 시스템
[편집]여러 프로세스를 분리하는 일은 가상화와 같은 매커니즘을 통해 구현할 수 있는데, 예를 들어 OLPC의 경우 경량 V서버의 개별 응용 프로그램들을 샌드박스화한 최초의 구현 사례이다.[21]
보안 강화 안드로이드
[편집]미국 국가 안보국은 보안 강화 안드로이드에 SELinux의 개념들 가운데 일부를 채택하였다.[22]
참조
[편집]- ↑ “SELinux userspace release 20211022 / 3.3”. SELinux Project. 2022년 4월 4일. 2022년 4월 4일에 확인함.
- ↑ “SELinux Frequently Asked Questions (FAQ) - NSA/CSS”. National Security Agency. 2013년 2월 6일에 확인함.
- ↑ http://www.nsa.gov/research/_files/selinux/papers/slinux.pdf
- ↑ “chcon”. Linuxcommand.org. 2004년 10월 24일에 원본 문서에서 보존된 문서. 2013년 2월 6일에 확인함.
- ↑ “restorecon(8) - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “restorecond(8) - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “runcon(1) - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “secon(1) - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “fixfiles(8): fix file SELinux security contexts - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “setfiles(8): set file SELinux security contexts - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “load_policy(8) - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “booleans(8) - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “getsebool(8): SELinux boolean value - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “setsebool(8): set SELinux boolean value - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “togglesebool(8) - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “setfiles(8): set file SELinux security contexts - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ “Ubuntu Manpage: selinux-config-enforcing - change /etc/selinux/config to set enforcing”. Canonical Ltd. 2012년 12월 20일에 원본 문서에서 보존된 문서. 2013년 2월 6일에 확인함.
- ↑ “Ubuntu Manpage: selinuxenabled - tool to be used within shell scripts to determine if”. Canonical Ltd. 2013년 2월 9일에 원본 문서에서 보존된 문서. 2013년 2월 6일에 확인함.
- ↑ “Ubuntu Manpage: selinux-policy-upgrade - upgrade the modules in the SE Linux policy”. Canonical Ltd. 2012년 4월 4일에 원본 문서에서 보존된 문서. 2013년 2월 6일에 확인함.
- ↑ “security_set_boolean(3) - Linux man page”. Linux.die.net. 2013년 2월 6일에 확인함.
- ↑ OLPC/Sugar Rainbow
- ↑ “SE Android”. 2014년 3월 7일에 원본 문서에서 보존된 문서. 2013년 11월 7일에 확인함.
외부 링크
[편집]- (영어) 보안 강화 리눅스 - 공식 웹사이트