11.6. 감사 규칙 정의 및 실행에 auditctl 사용
감사 시스템은 로그 파일에 캡처된 항목을 정의하는 일련의 규칙에서 작동합니다. auditctl
유틸리티를 사용하여 명령줄에서 또는 /etc/audit/rules.d/
디렉터리에서 감사 규칙을 설정할 수 있습니다.
auditctl
명령을 사용하면 감사 시스템의 기본 기능을 제어하고 기록된 감사 이벤트를 결정하는 규칙을 정의할 수 있습니다.
파일 시스템 규칙 예
/etc/passwd 파일의 모든 쓰기 액세스 권한을 로깅하는 규칙을 정의하기 위해
/etc/passwd
파일의 모든 속성 변경 사항:# auditctl -w /etc/passwd -p wa -k passwd_changes
/etc/selinux/
디렉터리에 있는 모든 파일에 대한 모든 쓰기 액세스 권한을 로깅하는 규칙을 정의하기 위해 다음을 수행하십시오.# auditctl -w /etc/selinux/ -p wa -k selinux_changes
시스템 호출 규칙 예
adjtimex
또는settimeofofday
시스템 호출이 프로그램에서 사용될 때마다 로그 항목을 생성하는 규칙을 정의하기 위해 64비트 아키텍처를 사용합니다.# auditctl -a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change
파일이 삭제될 때마다 로그 항목을 생성하는 규칙을 정의하거나 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)
도움말 페이지