SIEM · 보안관제 › A. SIEM 구조와 로그 수집 · 47/50편
학습 단계: 검색·대시보드·운영
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Wazuh 4.x 올인원 / Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
지금까지의 점검 항목을 주기별 체크리스트로 정리합니다. 체크리스트의 목적은 사람이 바뀌어도 같은 기준으로 SIEM 상태를 확인하게 만드는 것입니다.
SIEM 운영 체크리스트
[교대 시작 / 매일]
□ 매니저 데몬 running · events_dropped 0 (005·037)
□ Disconnected 에이전트 0 · 끊긴 사유 확인 (007)
□ 소스 침묵 0 (호스트×소스 수신량) (020)
□ 클러스터 green · 오늘 인덱스 생성 · 저장 지연 (031·035)
[매주]
□ 디코딩 실패율·필드 누락률 (030)
□ 상위 노이즈 룰 · 튜닝 예외 만료 (046)
□ 용량 증가·고갈 예상일 (034)
□ 신규 자산 편입 여부 · 수집 인벤토리 갱신 (003)
[매월]
□ 인증서 만료(30일 이내) (038)
□ 보존 정책·가장 오래된 인덱스 (033)
□ 위협 인텔·자산 CDB 갱신 (029)
□ 회귀 시험 샘플 갱신 (025)
핵심: 점검 결과는 "확인함"이 아니라 수치로 남긴다
체크리스트 결과를 수치와 함께 기록하면 월별 추세를 볼 수 있고, 운영 개선의 근거가 됩니다. "이상 없음"만 적힌 기록은 나중에 아무것도 증명하지 못합니다.
| 주기 | 핵심 | 근거 편 |
|---|---|---|
| 매일 | 데몬·에이전트·침묵·저장 | 005·007·020·031 |
| 매주 | 품질·노이즈·용량·자산 | 030·046·034·003 |
| 매월 | 인증서·보존·인텔·회귀 | 038·033·029·025 |
| 변경 시 | 문법 검사·회귀 시험 | 005·025 |
# 일일 점검 결과를 수치로 남기기 (분석 방법)
{
echo "date=$(date +%F) shift=day"
echo "daemons=$(sudo /var/ossec/bin/wazuh-control status | grep -c 'is running')"
echo "disconnected=$(sudo /var/ossec/bin/agent_control -l | grep -c Disconnected)"
echo "dropped=$(sudo grep -oP "events_dropped='\K[0-9]+" /var/ossec/var/run/wazuh-analysisd.state)"
echo "cluster=$(curl -sk -u 'admin:<비밀번호>' https://localhost:9200/_cluster/health | grep -oP '"status":"\K[a-z]+')"
} | tee -a /root/siem-ops/daily_check.log
date=2026-10-09 shift=day daemons=6 disconnected=0 dropped=0 cluster=green
모든 항목이 수치로 기록되고 기준값을 만족하면 그날의 SIEM 상태는 신뢰할 수 있습니다.
daily_check.log 최근 5일: 기록 없음
그 사이 인증서 만료로 filebeat 전송 중단 3일
체크리스트 운영 흐름입니다(가상의 예시).
[수행] 주기별 점검 → 수치 기록
↓
[판단] 기준 위반 항목 → 티켓 생성
↓
[추세] 주간·월간 수치 비교
↓
[개선] 반복 위반 항목 → 자동 점검·룰화
↓
[수행 감시] 기록 누락일 확인
| 상태 | 조치 |
|---|---|
| 기준 위반 | 티켓·복구 |
| 반복 위반 | 자동화·근본 개선 |
| 기록 누락 | 수행 확인 |
반복해서 수동으로 확인하는 항목은 점검 스크립트와 룰(이번 영역의 check=* 예시들)로 자동화해, 사람은 판단에 집중하도록 바꿔 갑니다.
<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,siem_a,">
<rule id="110460" level="10">
<decoded_as>json</decoded_as>
<field name="check">^daily_ops$</field>
<field name="last_run_hours" type="pcre2">^(2[6-9]|[3-9][0-9]|[1-9][0-9]{2,})$</field>
<description>SIEM 일일 운영 점검 26시간 이상 미수행</description>
</rule>
</group>
일일 점검이 실행되지 않은 상태 자체를 경보하는 예시입니다. 점검이 멈추면 조용한 장애가 길어지므로, 점검 수행 여부도 감시 대상에 넣습니다.
| 주기 | 대표 항목 |
|---|---|
| 매일 | 데몬·에이전트·침묵·저장 |
| 매주 | 품질·노이즈·용량 |
| 매월 | 인증서·보존·인텔 |
| 원칙 | 수치로 기록 |
| 면접 포인트 | "점검은 확인함이 아니라 숫자로 남긴다 — 점검이 멈춘 것도 감시 대상이다" |
다음 편 048. SIEM·로그 수집 — 수집·정규화 장애 대응 절차 에서는 수집 중단·파싱 실패·저장 차단 같은 SIEM 장애가 발생했을 때 영향 평가·임시 조치·복구·누락 데이터 보완·보고까지의 대응 절차를 정리합니다.
이전 편: 046. SIEM·로그 수집 — SIEM 성능 튜닝 — 노이즈 로그 필터링
📚 시리즈 전체 보기: SIEM · 보안관제