SELinux에서 Amanda Enterprise를 구성하는 방법

SELinux 모드 확인

getenforce 또는 sestatus를 루트 사용자로 실행하여 현재 SELinux 모드 구성을 가져올 수 있습니다. 전자는 단순히 "Enforcing"또는 "Permissive"를 stdout에 인쇄합니다. 후자는 SELinuxfs 마운트 지점, 현재 모드, SELinux 구성 파일에 나타나는 모드 등을 포함한 추가 세부 정보를 제공합니다.

SLELinux 모드는 setenforce 응용 프로그램을 사용하여 런타임 중에 루트 사용자가 변경할 수 있습니다.

용법:

setenforce [시행 | 허용 | 1 | 0]

sentenforce를 사용하여 변경 한 사항은 시스템 재부팅에 영구적이지 않음을 기억하는 것이 중요합니다.

SELinux가 비활성화되지 않고 허용으로 설정되면 SELinux 인식 응용 프로그램은 마치 강제 모드가 여전히 설정된 것처럼 작동합니다. SELinux는 또한 허용 모드에있는 동안 애플리케이션의 활동을 계속 감사합니다. 이것이 허용 모드를 사용하는 것과 SELinux를 완전히 비활성화하는 것의 주요 차이점입니다.

시스템 부팅시 mode의 기본값은 SELINUX 매개 변수에 의해 / etc / selinux / config 파일에 정의되어 있습니다. SELINUX 매개 변수는 강제, 허용 또는 비활성화를 허용합니다.

예 :

root> # cat / etc / selinux / config #이 파일은 시스템에서 SELinux의 상태를 제어합니다. # SELINUX =는 다음 세 가지 값 중 하나를 취할 수 있습니다. # 시행-SELinux 보안 정책이 시행됩니다. # permissive-SELinux는 강제하는 대신 경고를 출력합니다. # disabled-SELinux 정책이로드되지 않았습니다. SELINUX = enforcing # SELINUXTYPE =은 다음 세 가지 값 중 하나를 취할 수 있습니다. # targeted-대상 프로세스가 보호됨, # minimum-대상 정책 수정. 선택한 프로세스 만 보호됩니다. # mls-다중 레벨 보안 보호. SELINUXTYPE = 대상 루트> #

SELinux 모드가 부팅시 지속적으로 예기치 않은 모드로 전환되는 문제를 해결해야하는 경우 적용 매개 변수를 0 또는 1 (허용 또는 시행).

Amanda와 잘 작동하도록 SELinux 구성

SELinux의 주요 기능은 필수 액세스 제어를 시행하는 것이므로 SELinux가 비활성화되지 않았거나 허용 모드에있는 경우 Amanda를 실행하려면 추가 단계가 필요할 수 있습니다.

최신 버전의 Zmanda (Amanda Enterprise Edition)는 설치시 SELinux를 허용 모드로 자동 설정하려고 시도합니다.

root> # ./amanda-enterprise-3.4-linux-x64.run Zmanda를 설치하려면 SELinux를 Permissive 상태로 전환해야합니다. 설치 프로그램 자체가이를 수행하고 설치가 완료되면 원래 상태로 복원합니다. 계속 하시겠습니까? [예 / 아니요] :

Zmanda 설치 프로그램은이를 수행하기 위해 semanage 응용 프로그램을 사용하므로 설치 프로그램을 실행하기 전에 예를 들어 어떤 semanage를 확인하여 semanage가 설치되었는지 확인하십시오. semanage가 아직 설치되지 않은 경우 다음을 사용하여 애플리케이션을 가져올 수 있습니다.

root> # yum 제공 * / semanage {추가 출력이 표시되지 않음} root> # yum 설치

가능하면 SELinux를 구현하는 환경에서 Amanda / Zmanda 설치 문제를 해결할 때 SELinux를 일시적으로 허용 모드로 설정해보십시오. 테스트를 다시 시도하여 SELinux가 실제로 문제의 원인인지 확인하고 감사 로그 항목을 생성합니다.

보안 정책으로 인해 허용 모드에서 SELinux를 실행할 수없는 경우 SELinux가 Amanda의 정상 작동을 방해하고 있다는 표시가 있습니다. amanda 및 / 또는 zmanda와 관련된 항목에 대한 감사 로그를 확인할 수 있습니다.

root> # ausearch -m avc -c amanda

SELinux가 Amanda를 거부하는 로그 항목을 찾을 수 없지만 허용 모드에서 실행할 때 문제가없는 경우 dontaudit 규칙의 결과 일 수 있습니다. dontaudit 규칙을 일시적으로 비활성화하려면 다음을 실행할 수 있습니다.

root> # semodule -DB

이것이 실행되면 설치, 백업 또는 복원을 다시 실행하고 감사 로그를 확인하십시오. SELinux가 적용 가능한 거부를 기록한 후 다시 활성화하십시오. 감사하지 않음 규칙 :

root> # semodule -B

일부 운영 체제에는 Amanda 버전에 대한 올바른 컨텍스트를 반영하지 않을 수있는 Amanda 용 정책 모듈이 미리 설치되어 있습니다. 다음을 사용하여 현재 포함 된 모듈을 확인할 수 있습니다.

root> # semodule -l | 그렙 아만다

설치된 모든 모듈을 나열하는 데 몇 분 정도 걸릴 수 있으며 물론 'amanda'와 일치하는 모듈이 없으면 출력이 없습니다. 오래되거나 손상된 Amanda 정책 모듈을 실행중인 경우 다음을 사용하여 제거 할 수 있습니다.

root> # semodule -r 

모든 SELinux 컨텍스트는 수동으로 구성 할 수 있지만이 문서의 범위를 벗어납니다. 완전한 수동 솔루션에 관심이있는 경우 자세한 정보는 chcon 및 restorecon 매뉴얼 페이지를 참조해야합니다.

audit2allow로 사용자 지정 정책 패키지 만들기

대부분의 환경에는 유사한 운영 체제를 실행하는 여러 Amanda 클라이언트 컴퓨터가 있으며 때때로 추가 Amanda 서버를 배포해야합니다. 이러한 시나리오에서 각 개별 컴퓨터의 보안 컨텍스트를 수동으로 문제 해결하고 변경하는 것은 효율적이지 않습니다. 여기에서 audit2allow라는 도구는 네트워크의 여러 컴퓨터에 배포 할 수있는 사용자 지정 정책 패키지를 만드는 데 유용 할 수 있습니다.

먼저 허용 모드에서 작업을 실행하고 유형 적용 파일을 만듭니다.

root> # grep -E 'amanda | zmanda'/var/log/audit/audit.log | audit2allow -m myamanda> myamanda.te

유형 적용 파일이 생성되면 운영자가 확인해야합니다. 정보 보안 부서에서 요구하는대로 자동 생성 된 출력을 수정하십시오.

유형 적용 파일을 확인할 때 기억하십시오. 많은 애플리케이션이 -Z 스위치를 통해 SELinux 보안 컨텍스트를 제공합니다. 예 : 'ls, -Z', 'ps axZ'등.

유형 시행 파일이 보안 정책의 요구 사항을 충족하는 것으로 확인되면 활성 정책 모듈로 포함 할 정책 패키지로 변환해야합니다. 이를 위해 다음 명령을 실행할 수 있습니다.

root> # checkmodule -mo myamanda.mod myamanda.te root> # semodule_package -m myamanda.mod -o myamanda.pp

정책 모듈을로드하려면 다음을 실행해야합니다.

root> # semodule -i myamanda.pp

오류가 발생하면 “MLS 기반이있는 비 MLS 모듈에서 연결하려고했습니다.” 대신 유형 적용 파일을 Multi-Layer Security로 변환하고 다음과 같이 결과 정책 패키지를 포함해야합니다.

root> # checkmodule -M -m -o myamanda.mod myamanda.te root> # semodule_package -m myamanda.mod -o myamanda.pp

그런 다음 위에서 설명한대로 semodule -i를 사용하여 정책 패키지를 포함합니다. 이제 강제 모드에서 SELinux를 사용하여 백업 및 복원을 실행하도록 설정되어야합니다.