Oracle® Solaris 11.2의 감사 관리

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

이진 감사 파일의 컨텐츠 보기

Audit Review 권한 프로파일이 지정된 관리자는 praudit 명령을 사용하여 이진 감사 파일의 컨텐츠를 볼 수 있습니다.

# praudit options

다음은 일부 옵션 목록입니다. 이러한 옵션 중 하나를 –l 옵션과 결합하여 각 레코드를 한 행에 표시할 수 있습니다.

–s

행당 토큰 하나씩 짧은 형식으로 감사 레코드를 표시합니다.

–r

행당 토큰 하나씩 원시 형식으로 감사 레코드를 표시합니다.

–x

행당 토큰 하나씩 XML 형식으로 감사 레코드를 표시합니다. 이 옵션은 추가 처리에 유용합니다.

또한 auditreduce 명령의 praudit 출력을 파이프하여 auditreducepraudit 명령을 함께 사용할 수 있습니다.

예 5-7  짧은 형식으로 감사 레코드 표시

이 예제에서는 auditreduce 명령으로 추출된 로그인 및 로그아웃 이벤트가 짧은 형식으로 표시됩니다.

# auditreduce -c lo | praudit -s

header,69,2,AUE_screenlock,,mach1,2010-10-14 08:02:56.348 -07:00
subject,jdoe,root,staff,jdoe,staff,856,50036632,82 0 mach1
return,success,0
sequence,1298
예 5-8  원시 형식으로 감사 레코드 표시

이 예제에서는 auditreduce 명령으로 추출된 로그인 및 로그아웃 이벤트가 원시 형식으로 표시됩니다.

# auditreduce -c lo | praudit -r

21,69,2,6222,0x0000,10.132.136.45,1287070091,698391050
36,26700,0,10,26700,10,856,50036632,82 0 10.132.136.45
39,0,0
47,1298
예 5-9  감사 레코드를 XML 형식으로 표시

이 예에서는 감사 레코드가 XML 형식으로 변환됩니다.

# praudit -x 20100827183214.20100827215318.logins > 20100827.logins.xml

마찬가지로, auditreduce 명령으로 필터링된 감사 레코드를 XML 형식으로 표시할 수 있습니다.

# auditreduce -c lo | praudit -x
<record version="2" event="screenlock - unlock" host="mach1"
iso8601="2010-10-14 08:28:11.698 -07:00">
<subject audit-uid="jdoe" uid="root" gid="staff" ruid="jdoe
rgid="staff" pid="856" sid="50036632" tid="82 0 mach1"/>
<return errval="success" retval="0"/>
<sequence seq-num="1298"/>
</record>

파일의 내용은 스크립트로 관련 정보를 추출하여 작업할 수 있습니다.

예 5-10  XML 형식의 감사 레코드를 브라우저에서 읽을 수 있도록 설정

xsltproc 도구를 사용해서 모든 브라우저에서 읽을 수 있도록 XML 파일의 레코드 형식을 조정할 수 있습니다. 이 도구는 스타일시트 정의를 파일 컨텐츠에 적용합니다. 형식이 조정된 컨텐츠를 별도의 파일로 저장하려면 다음을 입력합니다.

# auditreduce -c lo | praudit -x | xsltproc - > logins.html

브라우저에서 logins.html 컨텐츠는 다음과 비슷한 형식으로 표시됩니다.

                     Audit Trail Data

File: time: 2013-11-04 12:54:28.000 -08:00

Event: login - local
time: 2013-11-04 12:54:28.418 -08:00 vers: 2 mod: host: host 
SUBJECT audit-uid: jdoe uid: jdoe gid: staff ruid: jdoe rgid: staff
      pid: 1534 sid: 3583012893 tid: 0 0 host 
RETURN errval: success retval: 0 

Event: connect to RAD
time: 2013-11-04 12:54:52.029 -08:00 vers: 2 mod: host: host 
SUBJECT audit-uid: jdoe uid: jdoe gid: staff ruid: jdoe rgid: staff
      pid: 1835 sid: 3583012893 tid: 0 0 host 
RETURN errval: success retval: 0 

Event: role login
time: 2013-11-08 08:42:52.286 -08:00 vers: 2 mod: host: host 
SUBJECT audit-uid: jdoe uid: root gid: root ruid: root rgid: root
      pid: 4265 sid: 3583012893 tid: 0 0 host 
RETURN errval: success retval: 0 

Event: role logout
time: 2013-11-08 08:43:37.125 -08:00 vers: 2 mod: host: host 
SUBJECT audit-uid: jdoe uid: root gid: root ruid: root rgid: root
      pid: 4265 sid: 3583012893 tid: 0 0 host 
RETURN errval: success retval: 0 

Event: login - ssh
time: 2013-12-23 12:24:37.292 -08:00 vers: 2 mod: host: host 
SUBJECT audit-uid: jsmith uid: jsmith gid: staff ruid: jsmith rgid: staff
      pid: 2002 sid: 39351741 tid: 14632 202240 host.example.com 
RETURN errval: success retval: 0 

Event: role login
time: 2013-12-23 12:25:07.345 -08:00 vers: 2 mod: fe host: host 
SUBJECT audit-uid: jsmith uid: root gid: root ruid: root rgid: root
      pid: 2023 sid: 39351741 tid: 14632 202240 host.example.com 
RETURN errval: failure retval: Permission denied 

Event: su
time: 2013-12-23 17:19:24.031 -08:00 vers: 2 mod: na host: host 
RETURN errval: success retval: 0 

Event: su logout
time: 2013-12-23 17:19:24.362 -08:00 vers: 2 mod: na host: host 
RETURN errval: success retval: 0 

Event: login - ssh
time: 2013-12-23 17:27:21.306 -08:00 vers: 2 mod: host: host 
SUBJECT audit-uid: jsmith uid: jsmith gid: staff ruid: jsmith rgid: staff
      pid: 2583 sid: 3401970889 tid: 13861 5632 host.example.com 
RETURN errval: success retval: 0 

Event: role login
time: 2013-12-23 17:27:28.361 -08:00 vers: 2 mod: host: host 
SUBJECT audit-uid: jsmith uid: root gid: root ruid: root rgid: root 
      pid: 2593 sid: 3401970889 tid: 13861 5632 host.example.com 
RETURN errval: success retval: 0 

Event: role logout
time: 2013-12-23 17:30:39.029 -08:00 vers: 2 mod: host: host 
SUBJECT audit-uid: jsmith uid: root gid: root ruid: root rgid: root 
      pid: 2593 sid: 3401970889 tid: 13861 5632 host.example.com 
RETURN errval: success retval: 0 

Other events 
예 5-11  pfedit 레코드만 표시

필터를 사용해서 감사 추적에서 특정 레코드만 추출하고 표시할 수 있습니다. 이 예제에서는 pfedit 명령 사용을 캡처하는 레코드가 필터링됩니다. 여기에서는 요약 파일이 20130827183936.20130827232326.logins라고 가정합니다. pfedit 명령을 사용하면 AUE_admin_edit 이벤트가 생성됩니다. 따라서 pfedit 레코드를 추출하려면 다음 명령을 실행합니다.

auditreduce -m AUE_admin_edit 20130827183936.20130827232326.logins | praudit
예 5-12  전체 감사 추적 인쇄

인쇄 명령에 파이프를 사용하면 전체 감사 추적이 프린터로 출력됩니다. 보안상 이유로 프린터는 제한적인 액세스 권한을 가집니다.

# auditreduce | praudit | lp -d example.protected.printer
예 5-13  특정 감사 파일 보기

이 예에서는 요약 로그인 파일이 터미널 창에서 검사됩니다.

# cd /var/audit/audit_summary/logins

# praudit 20100827183936.20100827232326.logins | more
예 5-14  스크립트를 사용하여 praudit 출력 처리

praudit 명령의 출력을 텍스트 행으로 처리하고자 할 수 있습니다. 예를 들어, auditreduce 명령에서 선택할 수 없는 레코드를 선택하고자 할 수 있습니다. 간단한 셸 스크립트를 사용하여 praudit 명령의 출력을 처리할 수 있습니다. 다음 샘플 스크립트는 하나의 감사 레코드를 한 행에 표시하고 사용자 지정 문자열을 검색한 다음 감사 파일을 원래 형식으로 반환합니다.

#!/bin/sh
#
## This script takes an argument of a user-specified string.
#  The sed command prefixes the header tokens with Control-A
#  The first tr command puts the audit tokens for one record
#  onto one line while preserving the line breaks as Control-A
#
praudit | sed -e '1,2d' -e '$s/^file.*$//' -e 's/^header/^aheader/' \\
| tr '\\012\\001' '\\002\\012' \\
| grep "$1" \\ 
Finds the user-specified string

| tr '\\002' '\\012' 
Restores the original newline breaks

스크립트의 ^a^a의 두 문자가 아닌 Ctrl-A입니다. 접두어는 텍스트로 나타날 수 있는 header 문자열에서 header 토큰을 구분합니다.

다음과 유사한 메시지는 praudit 명령을 사용할 수 있는 충분한 권한이 없음을 나타냅니다.

praudit: Can't assign 20090408164827.20090408171614.sys1.1 to stdin.

프로파일 셸에서 praudit 명령을 실행합니다. Audit Review 권한 프로파일이 지정된 관리자여야 합니다. 자세한 내용은 Oracle Solaris 11.2의 사용자 및 프로세스 보안 의 지정된 관리 권한 사용을 참조하십시오.