7.6. auditctl로 정의된 감사 규칙의 예
감사 시스템은 로그 파일에서 캡처되는 항목을 정의하는 일련의 규칙에서 작동합니다. 감사 규칙은 auditctl
유틸리티를 사용하거나 /etc/audit/rules.d/
디렉터리에서 명령줄에서 설정할 수 있습니다.
auditctl
명령을 사용하면 감사 시스템의 기본 기능을 제어하고 기록되는 감사 이벤트를 결정하는 규칙을 정의할 수 있습니다.
파일 시스템 규칙 예
/etc/passwd
파일의 모든 쓰기 액세스 권한 및 모든 속성 변경을 기록하는 규칙을 정의하려면 다음을 수행합니다.auditctl -w /etc/passwd -p wa -k passwd_changes
# auditctl -w /etc/passwd -p wa -k passwd_changes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/selinux/
디렉터리의 모든 쓰기 액세스 권한 및 모든 속성 변경을 기록하는 규칙을 정의하려면 다음을 수행합니다.auditctl -w /etc/selinux/ -p wa -k selinux_changes
# auditctl -w /etc/selinux/ -p wa -k selinux_changes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
시스템 호출 규칙 예
adjtimex
또는settimeofday
시스템 호출이 프로그램에서 사용될 때마다 로그 항목을 생성하는 규칙을 정의하기 위해 시스템은 64비트 아키텍처를 사용합니다.auditctl -a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change
# auditctl -a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일이 삭제되거나 ID가 1000 이상인 시스템 사용자에 의해 이름이 변경될 때마다 로그 항목을 생성하는 규칙을 정의하려면 다음을 수행합니다.
auditctl -a always,exit -S unlink -S unlinkat -S rename -S renameat -F auid>=1000 -F auid!=4294967295 -k delete
# auditctl -a always,exit -S unlink -S unlinkat -S rename -S renameat -F auid>=1000 -F auid!=4294967295 -k delete
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -F auid!=4294967295
옵션은 로그인 UID가 설정되지 않은 사용자를 제외하는 데 사용됩니다.
executable-file 규칙
/bin/id
프로그램의 모든 실행을 기록하는 규칙을 정의하려면 다음 명령을 실행합니다.
auditctl -a always,exit -F exe=/bin/id -F arch=b64 -S execve -k execution_bin_id
# auditctl -a always,exit -F exe=/bin/id -F arch=b64 -S execve -k execution_bin_id