가상화된 사이버 보안 실험실 구축: Splunk SIEM 설정 및 로그 포워딩

발행: (2025년 12월 13일 오후 12:20 GMT+9)
5 min read
원문: Dev.to

Source: Dev.to

강력한 로그의 필요성

Active Directory 환경을 완전히 배포하고 모든 클라이언트 시스템을 도메인에 조인한 뒤, 홈랩 여정에서 다음 논리적인 단계는 가시성을 확보하는 것입니다. 아이덴티티 서비스는 인증 및 접근의 기반을 만들지만, 중앙 집중식 로깅이 없으면 환경이 어떻게 동작하는지 이해하거나 비정상적인 활동을 감지하거나 시뮬레이션된 공격의 영향을 분석할 수 없습니다. 여기서 SIEM이 등장합니다.

이 글에서는 Splunk를 기본 SIEM 플랫폼으로 설치하고 구성한 뒤, Ubuntu Desktop, Windows 11, Windows Server 2025 VM에서 로그 포워딩을 활성화하는 과정을 중점적으로 다룹니다. 목표는 인증 로그, 시스템 활동, 보안 관련 이벤트를 한 곳에 수집하는 현실적인 모니터링 스택을 구축하여, 실제 운영 환경에서 보안 팀이 의존하는 방식을 그대로 재현하는 것입니다.

Splunk는 엔터프라이즈 로그 수집, 파싱, 탐지 로직을 이해하기 위한 훌륭한 출발점을 제공합니다. 향후 반복 작업에서는 이 VM을 Wazuh로 마이그레이션하거나 Splunk와 병행하여 별도의 Wazuh 배포를 실행해 SIEM 플랫폼을 비교하고 방어 기술을 확장할 수 있습니다.

이 글은 프로젝트의 “가시성” 단계 시작을 의미합니다—원시 시스템 활동을 실행 가능한 인사이트로 전환하는 단계입니다.

실험실 아키텍처 요약

구성을 시작하기 전에 현재 단계의 고수준 실험실 설계를 살펴보세요.

homelab topology

현재 환경에는 다음이 포함됩니다:

  • pfSense (라우터/방화벽)
  • lab‑LAN 내부 네트워크
  • Windows Server 2022 (도메인 컨트롤러 + DNS)
  • Windows 11 엔드포인트
  • Ubuntu Desktop 엔드포인트

네트워킹이 완료되면, 아이덴티티 레이어가 이 제어된 환경 위에 자리합니다.

프로세스 개요

아래는 수행된 주요 구성 단계의 요약입니다. 스크린샷을 포함해 과정을 문서화했습니다.

Step 1 – Ubuntu에 Splunk 설치

sudo dpkg -i splunk-9.0.x-linux-x64.deb
sudo /opt/splunk/bin/splunk start --accept-license
sudo /opt/splunk/bin/splunk enable boot-start

splunk server start and boot enable

Splunk Web GUI 접근
브라우저에서 https://:8000을 엽니다.
기본 관리자 로그인: admin / 설정한 비밀번호.

splunk web GUI dashboard

Step 2 – Splunk에서 입력/리스너 구성

  1. Settings → Data Inputs → Forwarded Data / UDP / TCP 로 이동합니다.
  2. 설정:
    • Linux와 pfSense용 UDP 514 (Syslog)
    • Splunk 포워더 기본값인 TCP 9997

리스너 활성화:

sudo /opt/splunk/bin/splunk enable listen 9997

splunk listening ports

수집 예정 로그

  • 보안 로그
  • Sysmon 운영 로그
  • 인증 이벤트
  • DC에서의 DNS 로그
  • Linux 인증 로그
  • pfSense 방화벽 로그

Step 3 – Windows 로그 포워딩

  1. Windows 11 및 Windows Server 2025에 Splunk Universal Forwarder를 다운로드하고 설치합니다.
  2. 포워더를 구성해 Splunk 서버로 로그를 전송합니다:
c:\Program Files\SplunkUniversalForwarder\bin\splunk add forward-server :9997
c:\Program Files\SplunkUniversalForwarder\bin\splunk add monitor "C:\Windows\System32\winevt\Logs\Security.evtx"
c:\Program Files\SplunkUniversalForwarder\bin\splunk add monitor "C:\Windows\System32\winevt\Logs\System.evtx"
c:\Program Files\SplunkUniversalForwarder\bin\splunk start

Windows forwarder configuration and test connection

보다 풍부한 텔레메트리를 위해 SwiftOnSecurity 구성을 사용해 Sysmon을 설치했습니다.

Step 4 – Linux 로그 포워딩

Ubuntu VM에서:

sudo apt install rsyslog

포워딩 규칙을 생성합니다:

sudo vim /etc/rsyslog.d/60-splunk.conf

다음 라인을 추가합니다:

*.* @@:514

rsyslog 재시작:

sudo systemctl restart rsyslog

rsyslog 60-splunk.conf content

Step 5 – pfSense 로그 포워딩

  1. pfSense WebGUI에 로그인합니다.
  2. Status → System Logs → Settings 로 이동합니다.
  3. Remote Syslog Servers 섹션에 Splunk IP와 UDP 514를 추가합니다.
  4. 포워딩하려는 모든 로그 유형을 선택합니다.

pfSense remote syslog configuration

Back to Blog

관련 글

더 보기 »