효율적인 Windows 이벤트 수집기 설정 및 구성하기

모든 Windows 환경에서는 이벤트 로그 관리가 중요한 기술입니다. 활동은 매 순간 Windows 이벤트 로그에 기록되며, 보안 도구뿐만 아니라 중요한 문제 해결 도구로 작동합니다. Windows 이벤트 전달(WEF)라는 기능을 통해 Windows는 원격 기기에서 이벤트를 Windows 이벤트 수집기로 전송할 수 있습니다.

Windows 이벤트 로그 전달 개요

WEF는 여러 Windows 서버에서 이벤트를 전달하고 하나의 위치에서 수집하는 서비스입니다. 이 서비스에는 두 가지 주요 구성 요소가 있습니다. 전달자와 수집기입니다. 수집기는 이벤트 로그 전달자로부터 전송된 모든 이벤트를 수집하는 Windows 서버에서 실행되는 서비스입니다.

전달 서버와 수집기 간의 “링크”는 구독으로 알려져 있습니다.

수집기는 이벤트를 수락하고 엔드포인트에서 수집할 이벤트 로그 경고를 지정할 수 있는 구독 관리자로 작동합니다.

WEF 프로젝트 개요

이 프로젝트 기사에서는 프로젝트를 구축하거나 솔루션을 구현하는 방법을 다룹니다. 이후 각 섹션은 이전 단계를 누적하여 구축됩니다.

이 프로젝트에서는 기본 WEF(Windows 이벤트 수집기) 구현 방법을 배우게 됩니다. 수집기와 이벤트를 수집하기 위해 구독을 설정하는 방법을 배우게 될 것입니다.

다음을 배우게 될 것입니다:

  1. Windows Server 인스턴스에서 이벤트 로그 수집기를 설정하고 구성하는 방법. 이는 모든 이벤트 로그 전달자가 이벤트를 보낼 Windows Server입니다.
  2. 적용될 때 해당 Windows Server 인스턴스가 이벤트를 보내기 위해 수집기를 가리키도록 하는 GPO를 만드는 방법.
  3. 수집기로 보낼 이벤트 유형을 구성하는 방법.

이 문서의 나머지 부분에서 각 단계를 진행하는 방법을 배우게 될 것입니다.

환경 및 지식 요구 사항

너무 멀리 가기 전에, 먼저 내 환경이 여러분의 환경과 동일한지 확인해 보겠습니다. 시작하기 전에 다음 사항이 준비되어 있는지 확인하세요:

  • (2) Windows Server 인스턴스 – 2012 R2 이상의 Windows Server 인스턴스를 사용할 수 있습니다. 이 문서에서는 Windows Server 2016을 사용합니다.
  • Active Directory
  • GPO – Group Policy 개체에 대한 이해가 필요합니다.
  • WinRM – 모든 클라이언트에서 WinRM이 실행 중이어야 합니다. 구성되지 않고 실행 중이어야 합니다.

Windows 이벤트 수집기 구성하기

첫 번째 수행할 작업은 Windows Server 인스턴스 중 하나를 수집기로 구성하는 것입니다. 수집기는 전달자로부터 들어오는 이벤트 로그를 받는 역할을 합니다.

Windows 이벤트 수집기에서 WinRM 활성화

이벤트를 수집기로 전달하는 Windows Server 인스턴스는 PowerShell Remoting 또는 WinRM을 통해 수행됩니다. 수집기에서 WinRM을 사용할 수 있도록 먼저 확인해야 합니다. 수집기가 Windows Server 2012 R2 이상을 실행 중인 경우 WinRM은 기본적으로 활성화되어 있지만 Windows 방화벽이 방해할 수 있습니다.

수집기에서 매개변수 없이 Enable-PSRemoting PowerShell cmdlet을 실행하십시오. 이미 PowerShell Remoting이 활성화된 경우 필요한 단계를 건너뛸 것입니다.

확실하게 하기 위해 원격 컴퓨터에서 Invoke-Command -ComputerName <COLLECTORHOSTNAME> -ScriptBlock {1}을 실행할 수도 있습니다. 오류가 발생하지 않으면 PowerShell Remoting이 작동 중입니다.

구독 수집기 서비스 시작

이제 PowerShell Remoting이 활성화되어 대기 중이므로 구독 수집기 서비스를 시작하십시오. 구독 수집기 서비스는 Windows Server 부팅 시에도 자동으로 시작되어야 합니다.

수집기에서 이벤트 뷰어를 열고 구독을 클릭합니다. 구독 옵션을 처음 열 때, Windows에서 Windows 이벤트 로그 수집기 서비스를 시작하고 자동으로 구성할 것인지 묻습니다. 수락하려면 를 클릭합니다.

아래에 메시지 예시를 볼 수 있습니다.

Windows Event Collector Service

축하합니다! 이제 수집기가 구성되었습니다. 이제 Windows Server 인스턴스에 이벤트를 수집기로 전달할 지시를 내릴 GPO를 설정해야 합니다.

전달자 GPO 설정하기

다음 단계는 하나 이상의 Windows 서버를 구성하여 이벤트 로그를 수집기로 전달하는 것입니다. 가장 쉬운 방법은 GPO를 생성하는 것입니다. 이 GPO는 이벤트를 전송할 서버가 포함된 하나 이상의 OU에 적용할 수 있습니다.

이 프로젝트 문서에서 GPO에 필요한 설정 기본 사항을 알 수 있습니다. 그러나 사용 가능한 모든 옵션을 자세히 알고 싶다면 Microsoft 설명서를 확인하세요.

네트워크 서비스가 이벤트 로그를 읽을 수 있도록 허용하기

WEF는 전달자에서 수집기로 이벤트를 읽고 전송하기 위해 네트워크 서비스 계정을 사용합니다. 기본적으로 네트워크 서비스 계정은 이를 수행할 수 있는 권한이 없습니다. 이를 허용하려면 먼저 ACL을 설정해야 합니다.

참고: Windows Server의 많은 이벤트 로그는 이미 네트워크 서비스 계정에 대해 응용 프로그램 및 시스템과 같은 일반적인 이벤트 로그에 대한 액세스를 제공합니다. 그러나 해당 계정은 보안 이벤트 로그 및 기타 사용자 정의 이벤트 로그에 대한 액세스 권한이 부여되지 않습니다.

네트워크 서비스 계정이 이벤트 로그 전달자에서 이벤트 로그를 읽을 수 있도록 하려면 GPO를 사용하십시오. 이 문서에서는 네트워크 서비스 계정이 보안 이벤트 로그에 액세스할 수 있도록 하는 방법을 알려드리겠습니다. 다른 이벤트 로그도 동일한 과정을 따릅니다.

1. 우선 명령 프롬프트를 열고 wevtutil gl security를 실행하세요. 이 명령은 보안 이벤트 로그에 대한 다양한 정보를 제공합니다. 주의해야 할 부분은 channelAccess SDDL입니다.

아래에는 보안 이벤트 로그에 필요한 SDDL 예시가 나와 있습니다. channelAccess 줄은 이벤트 로그에 설정된 권한을 나타냅니다. 아래에서 강조 표시된 SDDL을 복사하여 나중에 GPO에 추가할 수 있도록 어딘가에 저장하세요.

channelAccess SDDL

2. 그룹 정책 관리 콘솔을 통해 GPO를 생성하세요. GPO 내에서 컴퓨터 구성정책관리 템플릿Windows 구성 요소이벤트 전달대상 구독 관리자 구성로 이동하세요.

3. 수집기에 대한 대상 구독 관리자의 값을 WinRM 엔드포인트로 설정합니다. 서버는 다음 형식으로 설정하십시오:

Server=http://<수집기의 FQDN>:5985/wsman/SubscriptionManager/WEC,Refresh=60

수집기 엔드포인트 끝에 있는 갱신 간격을 확인하세요. 갱신 간격은 클라이언트가 새로운 구독을 확인하기 위해 얼마나 자주 접속해야 하는지를 나타냅니다.

4. 다음으로, 이전에 실행한 wevtutil gl security에서 복사한 SDDL을 설정 컴퓨터 구성정책관리 템플릿Windows 구성 요소이벤트 로그 서비스보안로그 액세스 구성에 붙여넣기합니다.

이 SDDL은 이벤트 로그에 구성된 다른 모든 권한보다 우선합니다.

아래에 보안 이벤트 로그에 대한 GPO 예시를 확인할 수 있습니다.

Configure log access GPO setting

5. GPO를 생성한 후에는 해당 GPO를 이벤트 로그를 전송할 Windows 서버가 포함된 기존 OU에 링크하거나 새 OU를 생성하고 GPO에 링크해야 합니다. 이 OU에 추가하는 모든 AD 컴퓨터 계정은 이제 수집기로의 구독을 설정합니다.

구독 설정

Active Directory 도메인의 모든 Windows 서버에서 모든 이벤트를 수집할 수 있도록 WEF를 구성하는 것은 좋은 아이디어처럼 보일 수 있지만, 실제로는 그렇지 않습니다. 선택적으로 중요한 이벤트만 전달해야 합니다. 중요하지 않은 내용을 걸러내는 것이 WEF의 가치를 발휘하는 곳입니다.

보안 이벤트 로그 구독 설정을 진행해 보겠습니다.

이미 GPO를 생성하고 Windows 서버를 포함하는 Active Directory OU에 연결했으므로 이벤트 소스는 이미 설정되어 있습니다.

  1. 수집기에서 Windows 이벤트 뷰어를 열고 구독을 마우스 오른쪽 버튼으로 클릭한 다음 구독 생성을 선택합니다.
Creating an event log subscription

2. 아래 그림과 같이 소스 컴퓨터가 시작됨 옵션을 선택한 다음 컴퓨터 그룹 선택을 클릭합니다. 여기에서 이벤트를 전달할 컴퓨터를 선택합니다.

Setting an event log source

전문 팁: AD 그룹 선택. 예: “도메인 컨트롤러”는 그룹 내의 모든 컴퓨터를 자동으로 채웁니다. 새 서버를 추가할 때마다 개별 컴퓨터를 선택할 필요가 없습니다.

3. 다음으로 전달할 이벤트를 선택합니다. 아래 그림과 같이 쿼리 필터를 열고 보안 이벤트 로그에서 이벤트를 수집기로 전달하도록 보안을 선택합니다.

Selecting Windows events to forward

4. 보안 로그가 선택되면 아래 그림과 같이 이벤트 ID, 키워드, 사용자 및 컴퓨터를 입력하여 더욱 필터링할 수 있습니다.

Filtering Windows events

5. 쿼리 필터에서 나가려면 확인을 클릭합니다.

6. 구독 속성 창에서 고급을 클릭합니다. 그런 다음 대기 시간 최소화를 선택합니다. 이 설정은 수집기가 가능한 한 빨리 이벤트를 받도록 하고, 뒤처지는 경우에는 재연결할 수 있도록 도움을 줍니다.

Setting Minimize Latency

WEF 구성 확인

WEF가 설정된 후에는 주 구독 페이지의 소스 컴퓨터 열을 확인하여 전달자가 실제로 확인되었는지 확인해야 합니다.

Event Log subscriptions

클라이언트의 “Applications and Services”에서 이벤트 전달 플러그인 운영 로그도 확인할 수 있습니다. 모든 것이 정상적으로 작동하는지 확인하기 위해 여기서는 Kerberos 또는 방화벽과 관련된 문제에 대한 자세한 오류가 표시됩니다.

EventLog-ForwardingPlugin event

할 일은 저가의 클라이언트를 찾아보고, 보안 로그를 지우고 경고 메시지를 받는지 확인하는 것입니다.

요약

이 프로젝트에서는 기본 WEF 구독을 설정하는 방법을 배웠습니다. 다음을 수행했습니다:

  • 이벤트 수집기를 설정했습니다.
  • 다양한 Windows Server 전달자에 구독을 생성하기 위해 GPO를 만들었습니다.
  • WEF 구독을 특정 이벤트만 보내도록 구성했습니다.
  • WEF 구독이 가능한 한 빠르게 이벤트를 전송하도록 보장했습니다.

WEF는 처음에 구성하기가 약간 까다로울 수 있지만, 한번 설정하고 동작하면 문제가 거의 없고 유지 보수도 최소화됩니다.

Source:
https://adamtheautomator.com/windows-event-collector/