보안 강화 Linux

Security-Enhanced Linux
보안 강화 Linux
SELinux logo.svg
SELinux Administration screenshot.png
SELinux 관리자 GUI(Arch Linux)
원저작자NSA레드햇
개발자레드햇
초기 릴리즈2000년 12월 22일, 21년(2000-12-22)[1]
안정된 릴리스
3.3 / 2021년 10월 22일, 9개월 전(2021-10-22)[2]
저장소
기입처C
운영 체제리눅스
유형보안, Linux 보안 모듈(LSM)
면허증.GNU GPL
웹 사이트selinuxproject.org, https://www.nsa.gov/what-we-do/research/selinux/

SELinux(Security-Enhanced Linux)는 Linux 커널 보안 모듈로 필수 접근컨트롤(MAC)을 포함한 접근컨트롤 보안 정책을 지원하는 메커니즘을 제공합니다.

SELinux는 다양한 Linux 배포판에 추가된 커널 수정 및 사용자 공간 도구 세트입니다.아키텍처는 보안 결정의 시행을 보안 정책과 분리하여 보안 정책 [3][4]시행과 관련된 소프트웨어의 양을 합리화합니다.SELinux의 기초가 되는 주요 개념은 미국 국가안보국(NSA)의 몇 가지 초기 프로젝트에서 찾을 수 있습니다.

개요

NSA 보안 강화 Linux 팀은 NSA SELinux를[5] 다음과 같이 설명합니다.

Linux 커널 및 유틸리티에 대한 일련의 패치를 통해 커널의 주요 서브시스템에 강력하고 유연한 필수 접근 제어(MAC) 아키텍처를 제공합니다.기밀성 및 무결성 요건에 따라 정보를 분리할 수 있는 강화된 메커니즘을 제공합니다.이것에 의해, 애플리케이션 시큐러티 메카니즘의 조작이나 바이패스의 위협에 대처할 수 있어 악의적이거나 결함이 있는 애플리케이션으로 인해 발생할 수 있는 피해를 억제할 수 있습니다.여기에는 일반적인 범용 보안 목표를 충족하도록 설계된 샘플 보안 정책 구성 파일 세트가 포함되어 있습니다.

SELinux를 통합한 Linux 커널은 파일 및 네트워크 리소스에 대한 액세스뿐만 아니라 사용자 프로그램 및 시스템 서비스를 제한하는 필수 액세스 제어 정책을 적용합니다.특권을 동작에 필요한 최소한의 권한으로 제한함으로써 (버퍼 오버플로우나 잘못된 설정을 통해) 장애가 발생하거나 손상된 경우 이러한 프로그램 및 데몬의 기능을 줄이거나 제거할 수 있습니다.이 제한 메커니즘은 기존의 Linux(재량) 접근컨트롤 메커니즘과는 독립적으로 동작합니다."root" 슈퍼유저라는 개념이 없으며 setuid/setgid 바이너리에 의존하는 것과 같은 기존 Linux 보안 메커니즘의 잘 알려진 단점도 공유하지 않습니다.

"수정되지 않은" Linux 시스템(SELinux가 없는 시스템)의 보안은 커널, 모든 특권 응용 프로그램 및 각 구성의 정확성에 따라 달라집니다.이러한 영역 중 하나에 결함이 있으면 시스템 전체가 손상될 수 있습니다.이와는 대조적으로 (SELinux 커널에 기반한) 변경된 시스템의 보안은 주로 커널의 정확성과 보안 정책 설정에 달려 있습니다.응용 프로그램의 정확성 또는 구성에 관한 문제로 인해 개별 사용자 프로그램 및 시스템 데몬이 제한적으로 손상될 수 있지만 다른 사용자 프로그램 및 시스템 데몬의 보안 또는 시스템 전체의 보안에 반드시 위협이 되는 것은 아닙니다.

순수주의 관점에서 SELinux는 필수 접근컨트롤, 필수 무결성 컨트롤, Role-Based Access Control(RBAC; 롤베이스 접근컨트롤) 및 유형 적용 아키텍처에서 도출된 개념과 기능을 혼합하여 제공합니다.서드파티 툴을 사용하면 다양한 보안 정책을 구축할 수 있습니다.

역사

UNIX(더 정확히는 POSIX) 컴퓨팅 환경 내에서 필수 및 임의 액세스 제어(MAC 및 DAC)를 제공하는 접근방식을 표준화하기 위한 첫 번째 작업은 1987년부터 1991년까지 만나 하나의 Rainbow Book(#020A 및 p)을 출판한 National Security Agency Trusted UNIX(TRUSIX) Working Group에 기인할 수 있습니다.최종적으로 공개되지 않은 정식 모델과 관련 평가 증거 프로토타입(#020B)을 로듀크했습니다.

SELinux는 Linux 커뮤니티에 대한 필수 접근 제어의 가치와 이러한 제어를 Linux에 추가하는 방법을 보여주기 위해 설계되었습니다.원래 SELinux를 구성하는 패치는 Linux 커널 소스에 명시적으로 적용해야 했습니다. SELinux는 Linux 커널의 2.6 시리즈로 Linux 커널 메인라인에 통합되었습니다.

SELinux의 최초 개발자인 NSA는 2000년 [6]12월 22일 GNU GPL에 따라 오픈 소스 개발 커뮤니티에 첫 버전을 출시했습니다.이 소프트웨어는 2003년 8월 8일에 출시된 메인라인 Linux 커널 2.6.0-test3에 통합되었습니다.그 밖에 Red Hat, Network Associates, Secure Computing Corporation, Tresys Technology, Trusted Computer Solutions 등이 중요한 공헌자입니다.FLASK/TE 구현의 시험용 포트는 TrustedB를 통해 이용할 수 있습니다.FreeBSD Darwin 운영체제용 SD 프로젝트.

보안 강화 Linux는 Flux Advanced Security Kernel(FLASK)을 구현합니다.이러한 커널에는 Fluke 운영 체제에서 프로토타입으로 제작된 아키텍처 구성 요소가 포함되어 있습니다.이러한 정책에서는 유형 적용, 롤 기반 액세스컨트롤 및 멀티레벨보안 개념에 기초한 정책 등 다양한 종류의 필수 접근컨트롤 정책을 적용할 수 있습니다.FLASK는 마하 유래의 분산형 신뢰할 수 있는 운영체제인 DTOS와 DTOS 설계 및 구현에 영향을 준 Trusted Information Systems의 연구 프로젝트인 Trusted Mach를 기반으로 했습니다.

원본 및 외부 기여자

SELinux의 최초 및 외부 기여자의 포괄적인 목록은 2009년 유지보수가 중단될 때까지 NSA 웹사이트에서 호스팅되었습니다.다음 목록은 Internet Archive Wayback Machine에서 보존된 원본을 재현합니다.투고의 범위는 페이지에 기재되어 있어 간결하게 생략되어 있습니다만,[7] 아카이브 카피를 통해서 액세스 할 수 있습니다.

  • 국가안보국(NSA)
  • Network Associates 연구소(NAI Labs)
  • MITRE Corporation
  • 시큐어 컴퓨팅 코퍼레이션(SCC)
  • 맷 앤더슨
  • 라이언 베르가우어
  • 바스티안 블랭크
  • 토머스 블러
  • 조슈아 브린들
  • 러셀 코커
  • 존 데니스
  • 야나크 데사이
  • 울리히 드레퍼
  • 로렌조 에르난데스 가르시아히어로
  • 대럴 괴델
  • 카르스텐 그로만
  • 스티브 그럽
  • 이반 주르디예프
  • 세르게 헤린
  • 채드 핸슨
  • 조어그 호
  • 트렌트 예거
  • 더스틴 커클랜드
  • 가이코헤이
  • 폴 크룸비에데
  • 조이 래튼
  • 톰 런던
  • 칼 맥밀런
  • 브라이언 메이
  • 프랭크 메이어
  • 토드 밀러
  • 롤랜드 맥그래스
  • 폴 무어
  • 제임스 모리스
  • 나카무라 유이치
  • 그레그 노리스
  • 에릭 파리
  • 크리스 페베니토
  • 레드햇
  • 페트르 로단
  • 숀 새비지
  • 채드 셀러
  • 로겔리오 세라노 주니어
  • 저스틴 스미스
  • 마노즈 스리바스타바
  • Tresys 테크놀로지
  • 마이클 톰슨
  • 신뢰할 수 있는 컴퓨터 솔루션
  • 톰 보그트
  • 레이노 월린
  • 댄 월시
  • 콜린 월터스
  • 마크 웨스터먼
  • 데이비드 A.휠러
  • 벤카트예키랄라
  • 캐서린 장

사용자, 정책 및 보안 컨텍스트

SELinux 사용자 및 역할은 실제 시스템 사용자 및 역할과 관련될 필요가 없습니다.SELinux는 현재 사용자 또는 프로세스별로 사용자 이름, 역할 및 도메인(또는 유형)으로 구성된 3개의 문자열 컨텍스트를 할당합니다.이 시스템은 통상 필요한 것보다 유연합니다.규칙적으로 대부분의 실제 사용자는 동일한 SELinux 사용자 이름을 공유하며 모든 접근컨트롤은 세 번째 태그인 도메인을 통해 관리됩니다.특정 도메인에 프로세스가 허용되는 환경을 정책에서 구성해야 합니다.명령어runcon그럼 명시적으로 지정된 컨텍스트(사용자, 역할 및 도메인)에 대한 프로세스의 기동이 허용되지만 정책에 의해 승인되지 않은 경우 SELinux에 의해 이행이 거부될 수 있습니다.

파일, 네트워크 포트 및 기타 하드웨어에도 이름, 역할(seldom 사용) 및 유형으로 구성된 SELinux 컨텍스트가 있습니다.파일 시스템의 경우 파일과 보안 컨텍스트 간의 매핑을 레이블링이라고 합니다.라벨링은 정책 파일에 정의되지만 정책을 변경하지 않고 수동으로 조정할 수도 있습니다.예를 들어 하드웨어 유형은 매우 상세합니다.bin_t(/bin 폴더 내의 모든 파일) 또는postgresql_port_t(포스트)SQL 포트, 5432)원격 파일 시스템의 SELinux 컨텍스트는 마운트 시 명시적으로 지정할 수 있습니다.

SELinux에 의해-Zshell 명령으로 전환ls,ps파일 또는 프로세스의 보안 컨텍스트를 표시할 수 있습니다.

일반적인 정책 규칙은 명시적 권한으로 구성됩니다.예를 들어 사용자가 특정 타깃(읽기, 실행 또는 네트워크 포트의 경우 바인드 또는 연결)에서 특정 액션을 수행하기 위해 소유해야 하는 도메인입니다.역할 및 보안 수준을 포함하는 보다 복잡한 매핑도 가능합니다.

일반적인 정책은 도메인 전환을 정의하는 매핑(라벨링) 파일, 규칙 파일 및 인터페이스 파일로 구성됩니다.이러한 3개의 파일을 SELinux 도구와 함께 컴파일하여 단일 정책 파일을 생성해야 합니다.결과 정책 파일을 커널에 로드하여 활성화할 수 있습니다.정책을 로드 및 언로드할 때는 재부팅할 필요가 없습니다.정책 파일은 수동으로 작성하거나 보다 사용자 친화적인 SELinux 관리 도구에서 생성할 수 있습니다.일반적으로 먼저 허용 모드에서 테스트되며, 여기서 위반은 기록되지만 허용됩니다.audit2allow이 도구는 나중에 정책을 확장하여 제한되는 애플리케이션의 모든 합법적인 액티비티를 허용하는 추가 규칙을 생성하기 위해 사용할 수 있습니다.

기능

SELinux 기능은 다음과 같습니다.

  • 정책과 시행을 완전히 분리하다
  • 잘 정의된 정책 인터페이스
  • 정책을 쿼리하고 액세스 제어를 적용하는 응용 프로그램 지원(예를 들어 올바른 컨텍스트에서 작업을 실행하는 crond 등)
  • 특정 정책 및 정책 언어의 독립성
  • 특정 보안 라벨 형식 및 콘텐츠의 독립성
  • 커널 개체 및 서비스에 대한 개별 레이블 및 제어
  • 정책 변경 지원
  • 시스템 무결성(도메인 유형)과 데이터 기밀성(다단계 보안)을 보호하기 위한 별도의 조치
  • 유연한 정책
  • 프로세스 초기화 및 상속, 프로그램 실행 제어
  • 파일 시스템, 디렉토리, 파일 및 열린 파일 설명자에 대한 제어
  • 소켓, 메시지 및 네트워크 인터페이스 제어
  • "기능" 사용에 대한 통제
  • Access Vector Cache(AVC;[8] 접근 벡터 캐시)를 통한 접근 결정
  • default-deny 정책(정책에서 명시적으로 지정되지 않은 것은 [9][10][11]모두 허용되지 않음)

실장

sestatus시스템 내 SELinux 상태 표시

SELinux는 버전 4.[12]3부터 안드로이드로 구현되었습니다.

무료 커뮤니티 지원 Linux 디스트리뷰션 중 Fedora는 Fedora Core 2 이후 디폴트로 Linux를 지원하는 등 초기 도입 기업 중 하나입니다.다른 배포판에는 버전9 Stretch[13] 릴리즈의 Debian이나 8.04 Hardy Heron의 [14]Ubuntu 등의 지원이 포함되어 있습니다.버전 11.1에서 openSUSE에는 SELinux "기본 활성화"[15]가 포함되어 있습니다.SUSE Linux Enterprise 11은, 「테크놀로지 프리뷰」[16]로서 SELinux 를 채용하고 있습니다.

SELinux는 CoreOS Container Linux 및 [17]rkt와 같은 Linux 컨테이너 기반 시스템에서 널리 사용됩니다.배포된 컨테이너와 해당 호스트 간의 분리를 더욱 강화하기 위한 추가 보안 제어로 유용합니다.

SELinux는 2005년부터 Red Hat Enterprise Linux(RHEL) 버전 4 및 향후 모든 릴리스의 일부로 제공됩니다.이러한 존재감은 CentOSScientific Linux의 해당 버전에도 반영되어 있습니다.RHEL4에서 지원되는 정책은 사용 편의성을 극대화하는 것을 목적으로 하는 정책이기 때문에 그다지 제한적이지 않습니다.RHEL의 향후 버전에서는 타깃 정책에 더 많은 타깃이 포함될 예정입니다.이는 보다 제한적인 정책을 의미합니다.

사용 시나리오

SELinux는 시스템이 각 사용자, 프로세스 및 데몬을 허용하는 액티비티를 매우 정확한 사양으로 잠재적으로 제어할 수 있습니다.데이터 액세스 및 활동 권한이 명확하게 정의된 데이터베이스 엔진이나 웹 서버와 같은 데몬을 제한하는 데 사용됩니다.이것에 의해, 제한 데몬이 파손하는 것에 의한 잠재적인 피해가 제한됩니다.

명령줄 유틸리티에는 다음이 포함됩니다.[18] chcon,[19] restorecon,[20] restorecond,[21] runcon,[22] secon,[23] fixfiles,[24] setfiles,[25] load_policy,[26] booleans,[27] getsebool,[28] setsebool,[29] togglesebool[30] setenforce,semodule,postfix-nochroot,check-selinux-installation,semodule_package,checkmodule,selinux-config-enforcing,[31] selinuxenabled,[32]selinux-policy-upgrade[33]

SELinux를 시행 모드로 만들려면:

$ sudo setenforce 1

SELinux 상태를 쿼리하려면:

$ getenforce

AppArmor와의 비교

SELinux는 설치된 소프트웨어가 수행할 수 있는 작업을 제한하는 문제에 대한 몇 가지 가능한 접근 방식 중 하나입니다. 다른 인기 있는 대안으로는 AppArmor가 있으며 SLES(SUSE Linux Enterprise Server), OpenSUSEDebian 기반 플랫폼에서 사용할 수 있습니다.AppArmor는 이제 없어진 Immunix Linux 플랫폼의 구성 요소로 개발되었습니다.AppArmor와 SELinux는 서로 근본적으로 다르기 때문에 소프트웨어 제어를 위한 뚜렷한 대안이 됩니다.SELinux는 보다 표현적인 정책 선택 항목에 대한 액세스를 제공하기 위해 특정 개념을 재창조한 반면, AppArmor는 DAC에 사용되는 동일한 관리 의미를 필수 액세스 제어 수준까지 확장하여 단순하도록 설계되었습니다.

몇 가지 주요 차이점이 있습니다.

  • 한 가지 중요한 차이점은 AppArmor가 파일 시스템 개체를 inode가 아닌 경로 이름으로 식별한다는 것입니다.즉, 예를 들어 액세스할 수 없는 파일은 하드 링크가 생성되면 AppArmor에서 액세스할 수 있게 되고 SELinux는 새로 생성된 하드 링크를 통한 액세스를 거부할 수 있습니다.
    • 따라서 파일에는 형식이 할당되지 않고 구성 파일에서 참조될 뿐이므로 AppArmor는 유형 적용 시스템이 아니라고 할 수 있습니다.
  • SELinux와 AppArmor는 또한 관리 방식과 [34]시스템에 통합하는 방식에서 큰 차이를 보입니다.
  • AppArmor는 MAC 레벨 시행을 통해 기존의 DAC 제어를 재현하려고 하기 때문에 대부분의 SELinux 구현에서 사용할 수 있는 작업 세트보다 훨씬 작습니다.예를 들어, AppArmor의 작업 집합은 읽기, 쓰기, 추가, 실행, 잠금 및 [35]링크로 구성됩니다.대부분의 SELinux 구현에서는 이보다 더 많은 작업 주문을 지원합니다.예를 들어, SELinux는 일반적으로 동일한 권한을 지원하지만 mknod 제어, 네트워크 소켓 바인딩, POSIX 기능의 암묵적인 사용, 커널 모듈 로드 및 언로드, 공유 메모리에 액세스하는 다양한 방법 등을 포함합니다.
  • AppArmor에는 POSIX 기능을 범주적으로 제한하는 컨트롤이 없습니다.현재의 기능 실장에서는, 조작의 주체(액터 및 조작의 경우)에 대한 개념이 포함되어 있지 않기 때문에, 액터의 강제 제어 영역(즉, 「샌드 박스」)외의 파일에 대한 특권 조작을 방지하는 것이 통상, MAC 레이어의 작업입니다.AppArmor는 자체 정책이 변경되는 것을 방지하고 파일 시스템의 마운트/마운트를 방지할 수 있지만 사용자가 승인된 제어 영역에서 벗어나는 것을 막는 데는 아무런 도움이 되지 않습니다.
    • 예를 들어 헬프 데스크 직원은 특정 파일을 소유하지 않더라도(예를 들어 부서별 파일 공유) 소유권이나 권한을 변경하는 것이 유리하다고 생각할 수 있습니다.관리자는 사용자에게 상자에 대한 루트 액세스 권한을 부여하지 않기 때문에 사용자에게 루트 액세스 권한을 부여합니다.CAP_FOWNER또는CAP_DAC_OVERRIDESELinux를 사용하면 관리자(또는 플랫폼 벤더)는 SELinux를 설정하여 그렇지 않은 사용자에게 모든 기능을 거부한 후 로그인 후 전환 가능한 제한된 도메인을 만들 수 있습니다.이 도메인은 적절한 유형의 파일에만 사용할 [citation needed]수 있습니다.
  • AppArmor에는 다단계 보안 개념이 없으므로 하드 BLP 또는 Biba를 적용할 [citation needed]수 없습니다.
  • AppArmor 구성은 일반 플랫 파일만 사용하여 수행됩니다.SELinux(대부분의 실장에서는 디폴트로 플랫 파일(관리자와 개발자가 컴파일 전에 사람이 읽을 수 있는 정책을 작성할 때 사용)과 확장 속성을 조합하여 사용합니다.
  • SELinux는 정책 구성 대체 소스로서 "리모트 정책 서버"(/etc/selinux/semanage.conf를 통해 구성 가능) 개념을 지원합니다.관리자가 각 서버에서 구성 배포 도구를 루트로 실행하거나(정책 업데이트를 허용) 수동으로 구성해야 하므로 AppArmor의 중앙 관리는 일반적으로 상당히 복잡합니다.

유사한 시스템 및 확장 기능

프로세스의 분리는 가상화 의 메커니즘에 의해서도 실시할 수 있습니다.를 들어 OLPC 프로젝트는 첫 번째 구현에서[36] 경량 V서버의 개별 애플리케이션을 샌드박스화했습니다.또한 NSA는 보안 강화 안드로이드에서 [37]SELinux 개념을 채택했습니다.

General Dynamics는 Red Hat Enterprise Linux용 멀티레벨 보안(MLS) 확장 기능인 PitBull Trusted Operating [38]System을 구축 및 배포합니다.

MCS(Multi-Category Security)는 Red Hat Enterprise Linux용 SELinux의 확장판입니다.사용자는 이 기능을 통해 파일에 카테고리로 라벨을 붙일 수 있습니다.이를 통해 임의의 접근컨트롤과 타입 적용을 통해 접근을 더욱 제한할 수 있습니다.범주는 다단계 보안(MLS)에 의해 사용되는 민감도 수준 내의 추가 구획을 제공한다.[39]

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Security-enhanced Linux available at NSA site - MARC". MARC. Retrieved 24 December 2018.
  2. ^ "SELinux userspace release 20211022 / 3.3". SELinux Project. 2022-04-04. Retrieved 2022-04-04.
  3. ^ "SELinux Frequently Asked Questions (FAQ) - NSA/CSS". National Security Agency. Retrieved 2013-02-06.
  4. ^ Loscocco, Peter; Smalley, Stephen (February 2001). "Integrating Flexible Support for Security Policies into the Linux Operating System" (PDF).
  5. ^ "Security-Enhanced Linux - NSA/CSS". National Security Agency. 2009-01-15. Archived from the original on 2020-10-22. Retrieved 2021-04-21.
  6. ^ "국가 안보국 Shares 보안 개선을 리눅스로"을 비교해 보자.NSA 눌러 내보내시오.포트 조지 G. 미드, 메릴랜드:.국가 안보국 중앙 보안 서비스.2001-01-02.그 2018-09-18에 원래에서 Archived.2021-04-21 Retrieved.국가 안보부에서 조사하고 대중들,security-enhanced 리눅스 운영 체제 시제품 이용할 수 있는 개발·진행하고 있습니다를 발표했다.
  7. ^ "Contributors to SELinux". Archived from the original on 2008-10-18.
  8. ^ Fedora Documentation Project (2010). Fedora 13 Security-Enhanced Linux User Guide. Fultus Corporation. p. 18. ISBN 978-1-59682-215-3. Retrieved 2012-02-22. SELinux decisions, such as allowing or disallowing access, are cached. This cache is known as the Access Vector Cache (AVC). Caching decisions decreases how often SELinux rules need to checked, which increases performance.
  9. ^ "SELinux/Quick introduction - Gentoo Wiki". wiki.gentoo.org.
  10. ^ "Getting Started with SELinux". Linode Guides & Tutorials.
  11. ^ "NB Overview - SELinux Wiki". selinuxproject.org.
  12. ^ "Security-Enhanced Linux in Android". Android Open Source Project. Retrieved 2016-01-31.
  13. ^ "SELinux". debian.org.
  14. ^ "How To Install SELinux on Ubuntu 8.04 "Hardy Heron"". Ubuntu Tutorials.
  15. ^ "openSUSE News".
  16. ^ "Release Notes for SUSE Linux Enterprise Desktop 11". Novell. Retrieved 2013-02-06.
  17. ^ "SELinux on CoreOS". CoreOS Docs.
  18. ^ "SELinux/Commands - FedoraProject". Retrieved 2015-11-25.
  19. ^ "chcon". Linuxcommand.org. Archived from the original on 2004-10-24. Retrieved 2013-02-06.
  20. ^ "restorecon(8) - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  21. ^ "restorecond(8) - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  22. ^ "runcon(1) - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  23. ^ "secon(1) - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  24. ^ "fixfiles(8): fix file SELinux security contexts - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  25. ^ "setfiles(8): set file SELinux security contexts - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  26. ^ "load_policy(8) - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  27. ^ "booleans(8) - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  28. ^ "getsebool(8): SELinux boolean value - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  29. ^ "setsebool(8): set SELinux boolean value - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  30. ^ "togglesebool(8) - Linux man page". Linux.die.net. Retrieved 2013-02-06.
  31. ^ "Ubuntu Manpage: selinux-config-enforcing - change /etc/selinux/config to set enforcing". Canonical Ltd. Archived from the original on 2012-12-20. Retrieved 2013-02-06.
  32. ^ "Ubuntu Manpage: selinuxenabled - tool to be used within shell scripts to determine if". Canonical Ltd. Archived from the original on 2013-02-09. Retrieved 2013-02-06.
  33. ^ "Ubuntu Manpage: selinux-policy-upgrade - upgrade the modules in the SE Linux policy". Canonical Ltd. Archived from the original on 2012-04-04. Retrieved 2013-02-06.
  34. ^ "SELinux backgrounds". SELinux. Security Guide. SUSE.
  35. ^ "apparmor.d - syntax of security profiles for AppArmor". Archived from the original on 2013-10-17.
  36. ^ "Rainbow". laptop.org.
  37. ^ "SELinux Related Work". NSA.gov.
  38. ^ General Dynamics. "PitBull Trusted Operating System".
  39. ^ Red Hat, Inc. "49.4. Multi-Category Security (MCS)".

외부 링크