Linux 감사 및 Unix 시스템 로그 수집
이 문서에서는 감사 데몬(auditd) 및 Unix 시스템 로그를 수집하고 Google SecOps 전달자를 사용하여 Google SecOps에 로그를 수집하는 방법을 설명합니다.
이 문서의 절차는 Debian 11.7 및 Ubuntu 22.04 LTS(Jammy Jellyfish)에서 테스트되었습니다.
auditd 및 syslog에서 로그 수집
rsyslog를 사용하여 auditd 로그를 Google SecOps 전달자에 전송하도록 Linux 호스트를 구성할 수 있습니다.
다음 명령어를 실행하여 감사 데몬과 감사 전달 프레임워크를 배포합니다. 데몬과 프레임워크를 이미 배포한 경우 이 단계를 건너뛸 수 있습니다.
apt-get install auditd audispd-plugins
사용자 및 루트를 포함하여 모든 명령어의 로깅을 사용 설정하려면
/etc/audit/rules.d/audit.rules
에 다음 줄을 추가합니다.-a exit,always -F arch=b64 -S execve -a exit,always -F arch=b32 -S execve
다음 명령어를 실행하여 auditd를 다시 시작합니다.
service auditd restart
auditd용 Google SecOps 전달자 구성
Google SecOps 전달자에서 다음 데이터 유형을 지정합니다.
- syslog:
common:
enabled: true
data_type: AUDITD
batch_n_seconds:
batch_n_bytes:
tcp_address:
connection_timeout_sec:
자세한 내용은 Linux에서 Google SecOps 전달자 설치 및 구성을 참조하세요.
syslog 구성
/etc/audisp/plugins.d/syslog.conf
파일의 매개변수가 다음 값과 일치하는지 확인합니다.active = yes direction = out path = /sbin/audisp-syslog type = always args = LOG_LOCAL6 format = string
/etc/rsyslog.d/50-default.conf
파일을 수정하거나 만들고 파일 끝에 다음 줄을 추가합니다.local6.* @@
FORWARDER_IP:PORT
FORWARDER_IP
및PORT
를 전달자의 IP 주소 및 포트로 바꿉니다. 첫 번째 열은 rsyslog를 통해/var/log
에서 전송되는 로그를 나타냅니다. 두 번째 열의@@
은 TCP를 사용하여 메시지를 보내는 것을 나타냅니다. UDP를 사용하려면@
을 하나 사용합니다.syslog에 대한 로컬 로깅을 사용 중지하려면 로컬 syslog에 로깅되는 항목을 구성하는 줄에
local6.none
을 추가하여 rsyslog를 구성합니다. 파일은 각 OS마다 다릅니다. Debian의 경우 파일이/etc/rsyslog.conf
이고 Ubuntu의 경우 파일이/etc/rsyslog.d/50-default.conf
입니다.*.*;local6.none;auth,authpriv.none -/var/log/syslog
다음 서비스를 다시 시작합니다.
service auditd restart service rsyslog restart
Unix 시스템 로그 수집
/etc/rsyslog.d/50-default.conf
파일을 만들거나 수정하고 파일 끝에 다음 줄을 추가합니다.*.* @@
FORWARDER_IP:PORT
FORWARDER_IP
및PORT
를 전달자의 IP 주소로 바꿉니다. 첫 번째 열은 rsyslog를 통해/var/log
에서 전송되는 로그를 나타냅니다. 두 번째 열의@@
은 TCP를 사용하여 메시지를 보내는 것을 나타냅니다. UDP를 사용하려면@
을 하나 사용합니다.다음 명령어를 실행하여 데몬을 다시 시작하고 새 구성을 로드합니다.
sudo service rsyslog restart
Unix 로그용 Google SecOps 전달자 구성
Google SecOps 전달자에서 다음 데이터 유형을 지정합니다.
- syslog:
common:
enabled: true
data_type: NIX_SYSTEM
batch_n_seconds:
batch_n_bytes:
tcp_address:
connection_timeout_sec:
자세한 내용은 Linux에서 Google SecOps 전달자 설치 및 구성을 참조하세요.