JavaScript is required to for searching.
탐색 링크 건너뛰기
인쇄 보기 종료
Oracle Solaris 11.1 관리: 보안 서비스     Oracle Solaris 11.1 Information Library (한국어)
search filter icon
search icon

문서 정보

머리말

제1부보안 개요

1.  보안 서비스(개요)

제2부시스템, 파일 및 장치 보안

2.  시스템 보안 관리(개요)

3.  시스템에 대한 액세스 제어(작업)

4.  바이러스 검사 서비스(작업)

5.  장치에 대한 액세스 제어(작업)

6.  BART를 사용하여 파일 무결성 확인(작업)

7.  파일에 대한 액세스 제어(작업)

제3부역할, 권한 프로파일 및 권한

8.  역할 및 권한 사용(개요)

9.  역할 기반 액세스 제어 사용(작업)

10.  Oracle Solaris의 보안 속성(참조)

제4부암호화 서비스

11.  암호화 프레임워크(개요)

12.  암호화 프레임워크(작업)

13.  키 관리 프레임워크

제5부인증 서비스 및 보안 통신

14.  플러그 가능한 인증 모듈 사용

15.  Secure Shell 사용

16.  Secure Shell(참조)

17.  단순 인증 및 보안 계층 사용

18.  네트워크 서비스 인증(작업)

제6부Kerberos 서비스

19.  Kerberos 서비스 소개

20.  Kerberos 서비스 계획

21.  Kerberos 서비스 구성(작업)

22.  Kerberos 오류 메시지 및 문제 해결

23.  Kerberos 주체 및 정책 관리(작업)

24.  Kerberos 응용 프로그램 사용(작업)

25.  Kerberos 서비스(참조)

제7부Oracle Solaris에서 감사

26.  감사(개요)

27.  감사 계획

28.  감사 관리(작업)

감사 서비스 구성(작업)

감사 서비스 구성(작업 맵)

감사 서비스 기본값을 표시하는 방법

감사 클래스를 사전 선택하는 방법

사용자의 감사 특성을 구성하는 방법

감사 정책을 변경하는 방법

감사 대기열 제어를 변경하는 방법

audit_warn 전자 메일 별칭을 구성하는 방법

감사 클래스를 추가하는 방법

감사 이벤트의 클래스 멤버쉽을 변경하는 방법

감사 로그 구성(작업)

감사 로그 구성(작업 맵)

감사 파일에 대한 ZFS 파일 시스템을 만드는 방법

감사 추적에 대한 감사 공간을 지정하는 방법

원격 저장소에 감사 파일을 보내는 방법

감사 파일에 대한 원격 저장소를 구성하는 방법

syslog 감사 로그를 구성하는 방법

영역에서 감사 서비스 구성(작업)

감사를 위해 동일하게 모든 영역을 구성하는 방법

영역별 감사를 구성하는 방법

감사 서비스를 사용/사용 안함으로 설정(작업)

감사 서비스를 새로 고치는 방법

감사 서비스를 사용 안함으로 설정하는 방법

감사 서비스를 사용으로 설정하는 방법

로컬 시스템에서 감사 레코드 관리(작업)

로컬 시스템에서 감사 레코드 관리(작업 맵)

감사 레코드 정의를 표시하는 방법

감사 추적에서 감사 파일을 병합하는 방법

감사 추적에서 감사 이벤트를 선택하는 방법

이진 감사 파일의 내용을 보는 방법

not_terminated 감사 파일을 정리하는 방법

감사 추적 오버플로우를 막는 방법

감사 서비스 문제 해결(작업)

감사 서비스 문제 해결(작업 맵)

감사가 실행 중인지 확인하는 방법

생성되는 감사 레코드의 양을 줄이는 방법

사용자의 모든 명령을 감사하는 방법

특정 파일에 대한 변경 사항 감사 레코드를 찾는 방법

로그인한 사용자의 사전 선택 마스크를 업데이트하는 방법

특정 이벤트의 감사를 막는 방법

이진 감사 파일의 크기를 제한하는 방법

전용 파일 시스템에서 감사 파일을 압축하는 방법

다른 운영 체제에서 로그인을 감사하는 방법

FTP 및 SFTP 파일 전송을 감사하는 방법

29.  감사(참조)

용어집

색인

감사 로그 구성(작업)

audit_binfileaudit_syslog의 두 감사 플러그인은 로컬 감사 로그를 만들 수 있습니다. 다음 작업은 이러한 로그를 구성하는 데 유용합니다.

감사 로그 구성(작업 맵)

다음 작업 맵에서는 다양한 플러그인에 대한 감사 로그를 구성하기 위한 절차를 안내합니다. audit_binfile 플러그인의 로그 구성은 선택 사항입니다. 다른 플러그인의 로그는 관리자가 구성해야 합니다.

작업
설명
수행 방법
audit_binfile 플러그인에 대한 로컬 저장소를 추가합니다.
감사 파일에 대한 추가 디스크 공간을 만들고 파일 권한으로 보호합니다.
audit_binfile 플러그인에 대한 저장소를 지정합니다.
이진 감사 레코드에 대한 디렉토리를 식별합니다.
원격 시스템에 대한 감사 레코드의 스트리밍을 구성합니다.
보호 방식을 통해 원격 저장소로 감사 레코드를 보낼 수 있습니다.
감사 파일에 대한 원격 저장소를 구성합니다.
원격 시스템에서 감사 레코드를 수신할 수 있게 해줍니다.
audit_syslog 플러그인에 대한 저장소를 구성합니다.
감사 이벤트를 텍스트 형식으로 syslog에 스트리밍할 수 있습니다.

감사 파일에 대한 ZFS 파일 시스템을 만드는 방법

다음 절차에서는 감사 파일에 대한 ZFS 풀과 해당하는 파일 시스템 및 마운트 지점을 만드는 방법을 설명합니다. 기본적으로 /var/audit 파일 시스템에는 audit_binfile 플러그인에 대한 감사 파일이 포함됩니다.

시작하기 전에

ZFS File System Management 및 ZFS Storage Management 권한 프로파일이 지정된 관리자여야 합니다. ZFS Storage Management 권한 프로파일을 사용하여 저장소 풀을 만들 수 있습니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  1. 필요한 디스크 공간 크기를 결정합니다.

    호스트당 200MB 이상의 디스크 공간을 지정합니다. 하지만 필요한 감사의 양에 따라 디스크 공간 요구 사항이 결정됩니다. 따라서 디스크 공간 요구 사항은 이 그림보다 훨씬 높을 수 있습니다.


    주 - 기본 클래스 사전 선택은 lo 클래스의 모든 기록되는 이벤트 인스턴스(로그인, 로그아웃, 역할 지정 등)에 대해 약 80바이트씩 증가하는 파일을 /var/audit에 만듭니다.


  2. 미러링되는 ZFS 저장소 풀을 만듭니다.

    zpool create 명령은 ZFS 파일 시스템에 대한 컨테이너인 저장소 풀을 만듭니다. 자세한 내용은 Oracle Solaris 11.1 관리: ZFS 파일 시스템의 1 장, Oracle Solaris ZFS 파일 시스템(소개)을 참조하십시오.

    # zpool create audit-pool mirror disk1 disk2

    예를 들어, c3t1d0c3t2d0의 두 디스크에서 auditp 풀을 만들고 미러링합니다.

    # zpool create auditp mirror c3t1d0 c3t2d0
  3. 감사 파일에 대한 ZFS 파일 시스템 및 마운트 지점을 만듭니다.

    하나의 명령으로 파일 시스템 및 마운트 지점을 만듭니다. 생성 시 파일 시스템이 마운트됩니다. 예를 들어, 다음 그림은 호스트 이름으로 저장되는 감사 추적 저장소를 보여줍니다.


    image:그림은 최상위 디렉토리 이름이 호스트 이름인 감사 루트 디렉토리를 보여줍니다.

    주 - 파일 시스템을 암호화하려는 경우 생성 시 파일 시스템을 암호화해야 합니다. 예는 예 28-12를 참조하십시오.

    암호화에는 관리가 필요합니다. 예를 들어, 마운트 시 문장암호가 필요합니다. 자세한 내용은 Oracle Solaris 11.1 관리: ZFS 파일 시스템의 ZFS 파일 시스템 암호화를 참조하십시오.


    # zfs create -o mountpoint=/mountpoint audit-pool/mountpoint

    예를 들어, auditf 파일 시스템에 대한 /audit 마운트 지점을 만듭니다.

    # zfs create -o mountpoint=/audit auditp/auditf
  4. 감사 파일에 대한 ZFS 파일 시스템을 만듭니다.
    # zfs create -p auditp/auditf/system

    예를 들어, sys1 시스템에 대한 암호화되지 않은 ZFS 파일 시스템을 만듭니다.

    # zfs create -p auditp/auditf/sys1
  5. (옵션) 감사 파일에 대한 추가 파일 시스템을 만듭니다.

    추가 파일 시스템을 만드는 한 가지 이유는 감사 오버플로우를 막기 위함입니다. 단계 8에 나온 대로 파일 시스템당 ZFS 할당량을 설정할 수 있습니다. audit_warn 전자 메일 별칭은 각 할당량에 도달하면 알려줍니다. 공간을 확보하기 위해 닫힌 감사 파일을 원격 서버로 이동할 수 있습니다.

    # zfs create -p auditp/auditf/sys1.1
    # zfs create -p auditp/auditf/sys1.2
  6. 상위 감사 파일 시스템을 보호합니다.

    다음 ZFS 등록 정보는 풀의 모든 파일 시스템에 대해 off로 설정됩니다.

    # zfs set devices=off auditp/auditf
    # zfs set exec=off auditp/auditf
    # zfs set setuid=off auditp/auditf
  7. 풀의 감사 파일을 압축합니다.

    일반적으로 압축은 ZFS의 파일 시스템 레벨에서 설정됩니다. 하지만 이 풀의 모든 파일 시스템에는 감사 파일이 포함되므로 압축은 풀에 대한 최상위 레벨 데이터 세트에서 설정됩니다.

    # zfs set compression=on auditp

    또한 Oracle Solaris 11.1 관리: ZFS 파일 시스템의 ZFS 압축, 중복 제거 및 암호화 등록 정보 간의 상호 작용을 참조하십시오.

  8. 할당량을 설정합니다.

    상위 파일 시스템, 종속 파일 시스템 또는 둘 다에서 할당량을 설정할 수 있습니다. 상위 감사 파일 시스템에서 할당량을 설정할 경우 종속 파일 시스템에 대한 할당량을 설정하면 제한이 추가됩니다.

    1. 상위 감사 파일 시스템에서 할당량을 설정합니다.

      다음 예에서는 auditp 풀의 두 디스크가 모두 할당량에 도달하면 audit_warn 스크립트가 감사 관리자에게 알려줍니다.

      # zfs set quota=510G auditp/auditf
    2. 종속 감사 파일 시스템에서 할당량을 설정합니다.

      다음 예에서는 auditp/auditf/ system 파일 시스템에 대한 할당량에 도달하면 audit_warn 스크립트가 감사 관리자에게 알려줍니다.

      # zfs set quota=170G auditp/auditf/sys1
      # zfs set quota=170G auditp/auditf/sys1.1
      # zfs set quota=165G auditp/auditf/sys1.2
  9. 대량 풀의 경우 감사 파일의 크기를 제한합니다.

    기본적으로 감사 파일은 풀의 크기까지 커질 수 있습니다. 관리 용이성을 위해 감사 파일의 크기를 제한합니다. 예 28-14를 참조하십시오.

예 28-12 감사 파일에 대한 암호화된 파일 시스템 만들기

사이트 보안 요구 사항을 준수하기 위해 관리자는 암호화를 사용하여 감사 파일 시스템을 만듭니다. 그런 다음 관리자는 마운트 지점을 설정합니다.

# zfs create -o encryption=on auditp/auditf
Enter passphrase for auditp/auditf': /** Type 8-character minimum passphrase**/
Enter again: /** Confirm passphrase **/
# zfs set -o mountpoint=/audit auditp/auditf

문장암호가 없으면 파일 시스템에 연결할 수 없으므로 관리자가 이를 안전한 위치에 저장합니다.

관리자가 auditf 파일 시스템에 추가 파일 시스템을 만들면 이러한 종속 파일 시스템도 암호화됩니다.

예 28-13 /var/audit 디렉토리에서 할당량 설정

이 예에서는 관리자가 기본 감사 파일 시스템에서 할당량을 설정합니다. 이 할당량에 도달하면 audit_warn 스크립트가 감사 관리자에게 경고합니다.

# zfs set quota=252G rpool/var/audit

감사 추적에 대한 감사 공간을 지정하는 방법

이 절차에서는 audit_binfile 플러그인에 대한 속성을 사용하여 감사 추적에 추가 디스크 공간을 지정합니다.

시작하기 전에

Audit Configuration 권한 프로파일이 지정된 관리자여야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  1. audit_binfile 플러그인에 대한 속성을 결정합니다.

    audit_binfile(5) 매뉴얼 페이지의 OBJECT ATTRIBUTES 절을 참조하십시오.

    # man audit_binfile
    ...
    OBJECT ATTRIBUTES
         The p_dir attribute specifies where the audit files will be created. 
         The directories are listed in the order in which they are to be used.
         
         The p_minfree attribute defines the percentage of free space that the
         audit system requires before the audit daemon invokes the audit_warn 
         script.
        
         The p_fsize attribute defines the maximum size that an audit
         file can become before it is automatically closed and a new 
         audit file is opened. ... The format of the p_fsize value can 
         be specified as an exact value in bytes or in a human-readable
         form with a suffix of  B,  K, M, G, T, P, E, Z (for bytes, 
         kilobytes, megabytes, gigabytes, terabytes,  petabytes, exabytes,
         or zettabytes, respectively). Suffixes of KB, MB, GB, TB, PB, EB,
         and ZB are also accepted.
  2. 감사 추적에 디렉토리를 추가하려면 p_dir 속성을 지정합니다.

    기본 파일 시스템은 /var/audit입니다.

    # auditconfig -setplugin audit_binfile p_dir=/audit/sys1.1,/var/audit

    위의 명령은 /audit/sys1.1 파일 시스템을 감사 파일에 대한 기본 디렉토리로 설정하고 기본 /var/audit 파일 시스템을 보조 디렉토리로 설정합니다. 이 시나리오에서는 /var/audit가 마지막 의존 디렉토리입니다. 이 구성이 성공하려면 /audit/sys1.1 파일 시스템이 존재해야 합니다.

    감사 파일에 대한 ZFS 파일 시스템을 만드는 방법에서 유사한 파일 시스템을 만들었습니다.

  3. 감사 서비스를 새로 고칩니다.

    auditconfig -setplugin 명령은 구성된 값을 설정합니다. 이 값은 감사 서비스의 등록 정보이므로 서비스를 새로 고치거나 다시 시작해도 복원됩니다. 감사 서비스가 새로 고쳐지거나 다시 시작되면 구성된 값이 활성이 됩니다. 구성된 값 및 활성 값에 대한 자세한 내용은 auditconfig(1M) 매뉴얼 페이지를 참조하십시오.

    # audit -s

예 28-14 audit_binfile 플러그인에 대한 파일 크기 제한

다음 예에서는 이진 감사 파일의 크기가 특정 크기로 설정됩니다. 크기는 메가바이트로 지정됩니다.

# auditconfig -setplugin audit_binfile p_fsize=4M
# auditconfig -getplugin audit_binfile
Plugin: audit_binfile
    Attributes: p_dir=/var/audit;p_fsize=4M;p_minfree=1;

기본적으로 감사 파일은 무제한으로 커질 수 있습니다. 더 작은 감사 파일을 만들기 위해 관리자는 4MB의 파일 크기 제한을 지정합니다. 제한 크기에 도달하면 감사 서비스는 새 파일을 만듭니다. 파일 크기 제한은 관리자가 감사 서비스를 새로 고친 후 적용됩니다.

# audit -s

예 28-15 감사 플러그인에 여러 변경 사항 지정

다음 예에서는 처리량이 많고 ZFS 풀이 큰 시스템의 관리자가 audit_binfile 플러그인에 대한 대기열 크기, 이진 파일 크기 및 소프트 제한 경고를 변경합니다. 관리자는 감사 파일이 4GB까지 커질 수 있도록 허용하고, ZFS 풀의 2%가 남으면 경고를 받으며, 허용된 할당량 크기를 두 배로 늘립니다. 기본 대기열 크기는 active audit queue hiwater mark (records) = 100과 같이 커널 감사 대기열에 대한 고수위 마크인 100입니다.

# auditconfig -getplugin audit_binfile
Plugin: audit_binfile
    Attributes: p_dir=/var/audit;p_fsize=2G;p_minfree=1;
# auditconfig -setplugin audit_binfile "p_minfree=2;p_fsize=4G" 200
# auditconfig -getplugin audit_binfile
Plugin: audit_binfile
    Attributes: p_dir=/var/audit;p_fsize=4G;p_minfree=2;
    Queue size: 200

변경된 지정 사항은 관리자가 감사 서비스를 새로 고친 후 적용됩니다.

# audit -s

예 28-16 감사 플러그인에 대한 대기열 크기 제거

다음 예에서는 audit_binfile 플러그인에 대한 대기열 크기가 제거됩니다.

# auditconfig -getplugin audit_binfile
Plugin: audit_binfile
    Attributes: p_dir=/var/audit;p_fsize=4G;p_minfree=2;
    Queue size: 200
# auditconfig -setplugin audit_binfile "" 0
# auditconfig -getplugin audit_binfile
 Plugin: audit_binfile
    Attributes: p_dir=/var/audit;p_fsize=4G;p_minfree=2;

비어 있는 따옴표("")는 현재 속성 값을 보존합니다. 마지막 0은 플러그인의 대기열 크기를 기본값으로 설정합니다.

플러그인에 대한 qsize 지정 변경 사항은 관리자가 감사 서비스를 새로 고친 후 적용됩니다.

# audit -s

예 28-17 경고에 대한 소프트 제한 설정

이 예에서는 모든 감사 파일 시스템에 대한 최소 사용 가능 공간 레벨을 설정하여 파일 시스템의 2%를 아직 사용할 수 있을 때 경고를 보냅니다.

# auditconfig -setplugin audit_binfile p_minfree=2

기본값은 1%입니다. 대형 ZFS 풀의 경우 적당히 낮은 백분율을 선택합니다. 예를 들어, 16TB 풀의 10%는 16GB이므로 충분한 디스크 공간이 남아 있을 때 감사 관리자에게 경고를 보내게 됩니다. 값이 2이면 약 2GB의 디스크 공간이 남아 있을 때 audit_warn 메시지를 보냅니다.

audit_warn 전자 메일 별칭이 경고를 수신합니다. 별칭을 설정하려면 audit_warn 전자 메일 별칭을 구성하는 방법을 참조하십시오.

또한 대형 풀의 경우 관리자는 파일 크기를 3GB로 제한할 수 있습니다.

# auditconfig -setplugin audit_binfile p_fsize=3G

플러그인에 대한 p_minfreep_fsize 지정 사항은 관리자가 감사 서비스를 새로 고친 후 적용됩니다.

# audit -s

원격 저장소에 감사 파일을 보내는 방법

이 절차에서는 audit_remote 플러그인의 속성을 사용하여 원격 감사 저장소에 감사 추적을 보냅니다. Oracle Solaris 시스템에서 원격 저장소를 구성하려면 감사 파일에 대한 원격 저장소를 구성하는 방법을 참조하십시오.

시작하기 전에

원격 저장소에서 감사 파일의 수신자여야 합니다. Audit Configuration 권한 프로파일이 지정된 관리자여야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  1. audit_remote 플러그인의 속성을 결정합니다.

    audit_remote(5) 매뉴얼 페이지의 OBJECT ATTRIBUTES 절을 참조하십시오.

    # man audit_remote
    ...
    OBJECT ATTRIBUTES
         The p_hosts attribute specifies the remote servers.
         You can also specify the port number and the GSS-API
         mechanism.
         
         The p_retries attribute specifies the number of retries for
         connecting and sending data. The default is 3.
    
         The p_timeout attribute specifies the number of seconds
         in which a connection times out.

    기본 포트는 solaris_audit IANA 지정 포트인 16162/tcp입니다. 기본 방식은 kerberos_v5입니다. 시간 초과 기본값은 5초입니다. 플러그인에 대한 대기열 크기도 지정할 수 있습니다.

  2. 원격 수신 시스템을 지정하려면 p_hosts 속성을 사용합니다.

    이 예에서 수신 시스템은 서로 다른 포트를 사용합니다.

    # auditconfig -setplugin audit_remote p_hosts=ars.example.com:16088:kerberos_v5
  3. 플러그인의 다른 속성을 변경하려면 이를 지정합니다.

    예를 들어, 다음 명령은 모든 선택적 속성에 대한 값을 지정합니다.

    # auditconfig -setplugin audit_remote "p_retries=;p_timeout=3" 300
  4. 값을 확인한 후 플러그인을 활성화합니다.

    예를 들어, 다음 명령은 플러그인의 값을 지정하고 확인합니다.

    # auditconfig -getplugin audit_remote
    Plugin: audit_remote (inactive)
        Attributes: p_hosts=ars.example.com:16088:kerberos_v5;p_retries=5;p_timeout=3;
        Queue size: 300
    # auditconfig -setplugin audit_remote active
  5. 감사 서비스를 새로 고칩니다.

    감사 서비스는 새로 고쳐질 때 감사 플러그인 변경 사항을 읽습니다.

    # audit -s

예 28-18 감사 대기열 버퍼 크기 조정

이 예에서 감사 대기열은 audit_remote 플러그인 사용 시 꽉 찹니다. 이 감사되는 시스템은 여러 클래스를 감사하도록 구성되었으며 트래픽이 많고 속도가 느린 네트워크를 사용하는 중입니다. 관리자는 플러그인의 버퍼 크기를 확대하여 감사 대기열이 증가할 수 있도록 하되 대기열에서 레코드를 제거하기 전에 버퍼 제한을 초과하지 않도록 할 수 있습니다.

audsys1 # auditconfig -setplugin audit_remote "" 1000
audsys1 # audit -s

감사 파일에 대한 원격 저장소를 구성하는 방법

이 절차에서는 원격 시스템 ARS(감사 원격 서버)가 하나 이상의 감사되는 시스템에서 감사 레코드를 수신하고 저장하도록 구성합니다. 그런 후 원격 서버에서 감사 데몬을 활성화합니다.

구성은 두 가지입니다. 첫째, 감사 데이터를 보안 방식으로 전송하도록 기본 보안 방식을 구성합니다. 즉, KDC를 구성합니다. 둘째, 감사되는 시스템과 ARS 모두에서 감사 서비스를 구성합니다. 이 절차에서는 ARS와 KDC가 동일한 서버에 있는 하나의 감사 클라이언트 및 하나의 ARS가 포함된 시나리오를 보여줍니다. 마찬가지로 보다 복잡한 시나리오도 구성할 수 있습니다.

시작하기 전에

root 역할을 맡아야 합니다. 감사 레코드를 원격 저장소에 스트리밍하기 위한 준비 방법에 설명된 대로 Kerberos 패키지를 설치했습니다. 원격 저장소에 감사 파일을 보내는 방법에 설명된 대로 감사되는 시스템을 구성한 관리자와 함께 작업합니다.

  1. 기본 보안 전송 방식을 구성합니다.

    감사되는 시스템 및 ARS가 모두 사용할 수 있는 시스템에 KDC가 필요하며, 각 시스템에 호스트 주체가 있어야 하고 audit 서비스 주체가 필요합니다.

    1. KDC를 구성합니다.

      사이트에서 KDC를 구성한 경우 이를 사용해서 단계 c를 계속 수행합니다. 다음 일련의 명령은 KDC 구성 전략을 보여줍니다.

      arstore # kdcmgr -a audr/admin -r EXAMPLE.COM create master

      이 명령은 관리 주체인 audr/admin을 사용하여 EXAMPLE.COM 영역에 마스터 KDC를 만들고 마스터 KDC를 사용으로 설정한 후 Kerberos 서비스를 시작합니다.

    2. KDC를 사용할 수 있는지 확인합니다.

      자세한 내용은 kdcmgr(1M) 매뉴얼 페이지를 참조하십시오.

      # kdcmgr status
      KDC Status Information
      --------------------------------------------
      svc:/network/security/krb5kdc:default (Kerberos key distribution center)
       State: online since Wed Feb 29 01:59:27 2012
         See: man -M /usr/share/man -s 1M krb5kdc
         See: /var/svc/log/network-security-krb5kdc:default.log
      Impact: None.
      
      KDC Master Status Information
      --------------------------------------------
      svc:/network/security/kadmin:default (Kerberos administration daemon)
       State: online since Wed Feb 29 01:59:28 2012
         See: man -M /usr/share/man -s 1M kadmind
         See: /var/svc/log/network-security-kadmin:default.log
      Impact: None.
      
      Transaction Log Information
      --------------------------------------------
      
      Kerberos update log (/var/krb5/principal.ulog)
      Update log dump :
              Log version # : 1
              Log state : Stable
              Entry block size : 2048
              Number of entries : 13
              First serial # : 1
              Last serial # : 13
              First time stamp : Wed Feb 29 01:59:27 2012
              Last time stamp : Mon Mar 5 19:29:28 2012
      
      
      Kerberos Related File Information
      --------------------------------------------
      (Displays any missing files)
    3. audit 서비스 주체를 KDC keytab 파일에 추가합니다.

      KDC 시스템에서 kadmin.local 명령을 입력하여 주체를 추가할 수 있습니다. 또는 kadmin 명령을 사용하고 암호를 제공하여 주체를 원격으로 추가할 수 있습니다. 이 예에서 arstore 시스템은 KDC를 실행합니다.

      # kadmin -p audr/admin
      kadmin: addprinc -randkey audit/arstore.example.com@EXAMPLE.COM
      kadmin: ktadd audit/arstore.example.com@EXAMPLE.COM
    4. 감사되는 각 시스템에서 키를 추가합니다.

      수신자와 발신자 모두 키가 있어야 합니다.

      enigma # kclient
              .. Enter the Kerberos realm: EXAMPLE.COM
              .. KDC hostname for the above realm: arstore.example.com
              .. Will this client need service keys ? [y/n]: y
  2. ARS에서 감사 서비스를 구성합니다.
    • Kerberos 영역의 모든 감사되는 시스템에서 감사 레코드를 받아들이는 그룹을 만들려면 연결 그룹을 지정합니다.
      # auditconfig -setremote group create Bank_A

      Bank_A는 연결 그룹입니다. hosts 속성이 정의되지 않았기 때문에 이 그룹은 모든 연결을 받아들이는 와일드카드 그룹입니다. 이 Kerberos 영역에서 audit_remote 플러그인이 올바르게 구성된 모든 감사되는 시스템은 이 ARS에 연결할 수 있습니다.

    • 이 그룹에 대한 연결을 제한하려면 이 저장소를 사용할 수 있는 감사되는 시스템을 지정합니다.
      # auditconfig -setremote group Bank_A "hosts=enigma.example.com"

      연결 그룹 Bank_A는 이제 enigma 시스템의 연결만 받아들입니다. 다른 호스트의 연결은 거절됩니다.

    • 이 그룹의 감사 파일이 너무 커지지 않도록 방지하려면 최대 크기를 설정합니다.
      # auditconfig -setremote group Bank_A "binfile_size=4GB"
      # auditconfig -getremote
      Audit Remote Server
        Attributes: listen_address=;login_grace_time=30;max_startups=10;listen_port=0;
      Connection group: Bank_A (inactive)
        Attributes: binfile_dir=/var/audit;binfile_fsize=4GB;binfile_minfree=1;
        hosts=enigma.example.com;
  3. 감사되는 시스템에서 감사 서비스를 구성합니다.

    ARS를 지정하려면 p_hosts 속성을 사용합니다.

    enigma # auditconfig -setplugin audit_remote active p_hosts=arstore.example.com
    enigma # auditconfig -getplugin audit_remote
    Plugin: audit_remote
          Attributes: p_retries=3;p_timeout=5;p_hosts=arstore.example.com;
  4. 감사 서비스를 새로 고칩니다.

    감사 서비스는 새로 고쳐질 때 감사 플러그인 변경 사항을 읽습니다.

    # audit -s

    KDC는 이제 감사되는 시스템 enigma와 ARS 사이의 연결을 관리합니다.

예 28-19 감사 레코드를 동일 ARS의 다른 파일 위치로 스트리밍

이 예에서는 이 절차의 예를 확장합니다. 관리자는 두 개의 연결 그룹을 만들어서 ARS의 호스트별로 감사 레코드를 구분합니다.

audsys1의 감사 파일은 이 ARS에서 Bank_A 연결 그룹으로 스트리밍됩니다.

arstore # auditconfig  -setremote group create Bank_A
arstore # auditconfig -setremote group active Bank_A "hosts=audsys1"
     "hosts=audsys1;binfile_dir=/var/audit/audsys1;binfile_fsize=4M;"

audsys2의 감사 파일은 Bank_B 연결 그룹으로 스트리밍됩니다.

arstore # auditconfig -setremote group create Bank_B
arstore # auditconfig -setremote group active Bank_B \
     "hosts=audsys2;binfile_dir=/var/audit/audsys2;binfile_fsize=4M;"

유지 관리를 쉽게 하기 위해 관리자는 다른 속성 값을 동일하게 설정합니다.

arstore # auditconfig -getremote
Audit Remote Server
      Attributes: listen_address=;login_grace_time=30;max_startups=10;listen_port=0;

Connection group: Bank_A
      Attributes: binfile_dir=/var/audit/audsys1;binfile_fsize=4M;binfile_minfree=1;
      hosts=audsys1

Connection group: Bank_B
      Attributes: binfile_dir=/var/audit/audsys2;binfile_fsize=4M;binfile_minfree=1;
      hosts=audsys2

예 28-20 KDC와 다른 시스템에 ARS 배치

이 예에서 관리자는 KDC와 다른 시스템에 ARS를 배치합니다. 첫째, 관리자가 마스터 KDC를 만들고 구성합니다.

kserv # kdcmgr -a audr/admin -r EXAMPLE.COM create master
kserv # kadmin.local -p audr/admin
kadmin: addprinc -randkey audit/arstore.example.com@EXAMPLE.COM
kadmin: ktadd -t /tmp/krb5.keytab.audit audit/arstore.example.com@EXAMPLE.COM

/tmp/krb5.keytab.audit 파일을 ARS arstore로 안전하게 전송한 후 관리자가 파일을 올바른 위치로 이동합니다.

arstore # chown root:root krb5.keytab.audit
arstore # chmod 600 krb5.keytab.audit
arstore # mv krb5.keytab.audit /etc/krb5/krb5.keytab

파일을 다시 작성하는 대신 관리자는 ARS에서 ktutil 명령을 사용하여 KDC krb5.keytab.audit 파일을 arstore/etc/krb5/krb5.keytab 파일에 있는 기존 키와 병합할 수도 있습니다.

마지막으로 관리자가 감사되는 시스템에서 키를 생성합니다.

enigma # kclient
   .. Enter the Kerberos realm: EXAMPLE.COM
   .. KDC hostname for the above realm: kserv.example.com
   .. Will this client need service keys ? [y/n]: y

syslog 감사 로그를 구성하는 방법

감사 서비스에서 감사 대기열의 감사 레코드 중 일부나 모두를 syslog 유틸리티에 복사하도록 지시할 수 있습니다. 이진 감사 데이터와 텍스트 요약을 모두 기록할 경우 이진 데이터는 완전한 감사 레코드를 제공하고, 요약은 실시간 검토를 위해 데이터를 필터링합니다.

시작하기 전에

audit_syslog 플러그인을 구성하려면 Audit Configuration 권한 프로파일이 지정된 관리자여야 합니다. syslog 유틸리티를 구성하고 auditlog 파일을 만들려면 root 역할을 맡아야 합니다.

  1. audit_syslog 플러그인에 보낼 감사 클래스를 선택하고 플러그인을 활성 상태로 만듭니다.

    주 - p_flags 감사 클래스는 시스템 기본값으로 또는 사용자나 권한 프로파일의 감사 플래그로 사전 선택되어야 합니다. 사전 선택되지 않은 클래스에 대한 레코드는 수집되지 않습니다.


    # auditconfig -setplugin audit_syslog active p_flags=lo,+as,-ss
  2. 온라인 상태의 system-log 서비스 인스턴스를 확인합니다.
    # svcs system-log
    STATE          STIME    FMRI
    disabled       13:11:55 svc:/system/system-log:rsyslog
    online         13:13:27 svc:/system/system-log:default

    주 - rsyslog 서비스 인스턴스가 온라인이면 rsyslog.conf 파일을 수정합니다.


  3. syslog 유틸리티를 구성합니다.
    1. audit.notice 항목을 syslog.conf 파일에 추가합니다.

      항목에는 로그 파일의 위치가 포함됩니다.

      # cat /etc/syslog.conf
      …
      audit.notice       /var/adm/auditlog
    2. 로그 파일을 만듭니다.
      # touch /var/adm/auditlog
    3. system-log 서비스의 구성 정보를 새로 고칩니다.
      # svcadm refresh system-log:default

      주 - rsyslog 서비스가 온라인이면 system-log:rsyslog 서비스 인스턴스를 새로 고칩니다.


  4. 감사 서비스를 새로 고칩니다.

    감사 서비스는 새로 고쳐질 때 감사 플러그인 변경 사항을 읽습니다.

    # audit -s
  5. 정기적으로 syslog 로그 파일을 아카이브합니다.

    감사 서비스는 확장 출력을 생성할 수 있습니다. 로그를 관리하려면 logadm(1M) 매뉴얼 페이지를 참조하십시오.

예 28-21 syslog 출력에 대한 감사 클래스 지정

다음 예에서는 syslog 유틸리티가 사전 선택된 감사 클래스를 일부를 수집합니다. pf 클래스는 예 28-10에서 만들어졌습니다.

# auditconfig -setnaflags lo,na
# auditconfig -setflags lo,ss
# usermod -K audit_flags=pf:no jdoe
# auditconfig -setplugin audit_syslog active p_flags=lo,+na,-ss,+pf

auditconfig 명령에 대한 인수는 시스템에서 모든 로그인/로그아웃, 지정 불가능 및 시스템 상태 감사 레코드의 변경 사항을 수집하도록 지시합니다. audit_syslog 플러그인 항목은 syslog 유틸리티에서 모든 로그인, 성공한 지정 불가능 이벤트 및 시스템의 상태의 실패한 변경 사항을 수집하도록 지시합니다.

jdoe 사용자의 경우 이진 유틸리티가 pfexec 명령에 대한 성공 및 실패한 호출을 수집합니다. syslog 유틸리티는 pfexec 명령에 대해 성공한 호출을 수집합니다.

예 28-22 원격 시스템에 syslog 감사 레코드 두기

syslog.conf 파일의 audit.notice 항목이 원격 시스템을 가리키도록 변경할 수 있습니다. 예를 들어, 로컬 시스템의 이름은 sys1.1입니다. 원격 시스템은 remote1입니다.

sys1.1 # cat /etc/syslog.conf
…
audit.notice       @remote1

remote1 시스템에 있는 syslog.conf 파일의 audit.notice 항목은 로그 파일을 가리킵니다.

remote1 # cat /etc/syslog.conf
…
audit.notice       /var/adm/auditlog