Red Hat Training

A Red Hat training course is available for RHEL 8

12.6. 감사 규칙 정의 및 실행에 auditctl 사용

감사 시스템은 로그 파일에 캡처된 항목을 정의하는 일련의 규칙에서 작동합니다. auditctl 유틸리티를 사용하여 명령줄에서 또는 /etc/audit/rules.d/ 디렉터리에서 감사 규칙을 설정할 수 있습니다.

auditctl 명령을 사용하면 감사 시스템의 기본 기능을 제어하고 기록된 감사 이벤트를 결정하는 규칙을 정의할 수 있습니다.

파일 시스템 규칙 예

  1. /etc/passwd 파일의 모든 쓰기 액세스 권한을 로깅하는 규칙을 정의하기 위해 /etc/passwd 파일의 모든 속성 변경 사항:

    # auditctl -w /etc/passwd -p wa -k passwd_changes
  2. /etc/selinux/ 디렉터리에 있는 모든 파일에 대한 모든 쓰기 액세스 권한을 로깅하는 규칙을 정의하기 위해 다음을 수행하십시오.

    # auditctl -w /etc/selinux/ -p wa -k selinux_changes

시스템 호출 규칙 예

  1. adjtimex 또는 settimeofofday 시스템 호출이 프로그램에서 사용될 때마다 로그 항목을 생성하는 규칙을 정의하기 위해 64비트 아키텍처를 사용합니다.

    # auditctl -a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change
  2. 파일이 삭제될 때마다 로그 항목을 생성하는 규칙을 정의하거나 ID가 1000 이상인 시스템 사용자로 이름을 변경하려면 다음을 수행합니다.

    # auditctl -a always,exit -S unlink -S unlinkat -S rename -S renameat -F auid>=1000 -F auid!=4294967295 -k delete

    -F auid!=4294967295 옵션은 로그인 UID가 설정되지 않은 사용자를 제외하는 데 사용됩니다.

실행 파일 규칙

/bin/id 프로그램의 모든 실행을 로깅하는 규칙을 정의하려면 다음 명령을 실행합니다.

# auditctl -a always,exit -F exe=/bin/id -F arch=b64 -S execve -k execution_bin_id

추가 리소스

  • auditctl(8) 도움말 페이지.