이전에 auditd와 auditbeat를 함께 운용하면 충돌이 발생할 수 있다고 했었는데 추후 충돌이 발생하면 롤백을 하던 해결을 위한 삽질을 해보던 할까 한다. 막연한 고민과 걱정보다는 그냥 해보는 것이 좋을 것 같다 생각한다.
auditd에서는 감사 규칙과 로그를 관리
auditbeat는 멀티캐스트 소켓으로 읽기 전용 수집만 하도록 설정
/ (루트) 디렉토리의 경우 20GB로 데이터 용량이 작기 때문에 /data/ 디렉토리로 log 보관 경로를 변경해 주기로 마음을 먹었다.
root 계정으로 스위칭 후 /data 디렉토리에 감사 로그를 기록할 경로를 만들어주고 권한에 대해서는 root만 해당 파일에 대해 접근할 수 있게 해주었다. 만들어진 경로에 대해서도 설정이 필요하기에 그 부분 또한 설정해주었다.
mkdir -p /data/audit/log
chown -R root:root /data/audit
vi /etc/audit/auditd.conf
# 기존 log_file 경로 주석
log_file = /data/audit/log/audit.log
보통 audit 규칙의 경우 해당 경로에서 파일을 추가해서 관리를 한다고 한다.
/etc/audit/rules.d/
해당 경로 상에 tty_input.rules 파일을 생성 및 추가할 규칙 설정을 해준다.
# /etc/audit/rules.d/tty_input.rules
-a always,exit -F arch=b64 -S read -F success=1 -F auid!=4294967295 -k tty_input
파일에 저장하지 않고 재부팅 시에나 auditd 서비스 재시작 시 날릴 룰의 경우에는 아래와 같이 해줘도 된다.
auditctl -a always,exit -F arch=b64 -S read -F success=1 -F auid!=4294967295 -k tty_input
규칙 반영 시와 적용확인 시에 아래와 같이 하면 된다.
augenrules --load
auditctl -l
대략적으로 log 형식을 봤을 때 comm에 대한 부분이 내가 입력한 혹은 시스템에서 입력한 명령어로 보인다.
type으로 내가 수집하고자 하는 타입을 지정할 수 있을 것 같은데 조금 더 찾아봐야 할 것 같다.
type이 SYSCALL 같은 경우에는 사용자 입력이 아니다 보니 나에게 있어서는 제외를 해도 될 것 같은데 말이다. 일단 하루 정도 로그 쌓이는 양을 확인 후에 너무 많은 로그가 쌓인다고 생각했을 때에는 type에 대해서 세부적으로 제외시킬 것은 제외를 시켜야겠다.
[audit 필드 가이드]
audit-documentation/specs/fields/field-dictionary.csv at main · linux-audit/audit-documentation
Documentation and specifications. Contribute to linux-audit/audit-documentation development by creating an account on GitHub.
github.com
'끄적끄적' 카테고리의 다른 글
| 노트북에 ubuntu server 올리기 - 2 (0) | 2025.09.13 |
|---|---|
| 노트북에 ubuntu server 올리기 - 1 (0) | 2025.09.12 |
많은 생각들을 가지고 있고 사람들과 대화를 하는 것이 즐거운 펄의 스페이스입니다.
즐거운 하루 되셨으면 좋겠습니다😊