원본 시작 구독 설정

원본 시작 구독을 사용하면 이벤트 원본 컴퓨터를 정의하지 않고 이벤트 수집기 컴퓨터에서 구독을 정의할 수 있으며, 이벤트 수집기 컴퓨터에 이벤트를 전달하기 위해 여러 원격 이벤트 원본 컴퓨터를 설정할 수 있습니다(그룹 정책 설정 사용). 이는 수집기 시작 구독 모델에서 이벤트 수집기가 이벤트 구독의 모든 이벤트 원본을 정의해야 하기 때문에 수집기 시작 구독과 다릅니다.

원본 시작 구독을 설정할 때 이벤트 원본 컴퓨터가 이벤트 수집기 컴퓨터와 동일한 도메인에 있는지 여부를 고려합니다. 다음 섹션에서는 이벤트 원본이 동일한 도메인에 있거나 이벤트 수집기 컴퓨터와 동일한 도메인에 있지 않을 때 수행하는 단계를 설명합니다.

참고

로컬 또는 원격 도메인의 모든 컴퓨터는 이벤트 수집기가 될 수 있습니다. 그러나 이벤트 수집기를 선택할 때는 대부분의 이벤트가 생성될 위치에 토폴로지적으로 가까운 컴퓨터를 선택하는 것이 중요합니다. WAN의 먼 네트워크 위치에 있는 컴퓨터에 이벤트를 보내면 이벤트 컬렉션의 전반적인 성능과 효율성을 줄일 수 있습니다.

이벤트 원본이 이벤트 수집기 컴퓨터와 동일한 도메인에 있는 원본 시작 구독 설정

원본 시작 구독을 설정하려면 이벤트 원본 컴퓨터와 이벤트 수집기 컴퓨터를 모두 구성해야 합니다.

참고

이러한 지침에서는 원격 컴퓨터 또는 컴퓨터가 이벤트를 수집하도록 구성된 도메인을 제공하는 Windows Server 도메인 컨트롤러에 대한 관리자 액세스 권한이 있다고 가정합니다.

이벤트 원본 컴퓨터 구성

  1. Windows Server 도메인 컨트롤러의 관리자 권한 명령 프롬프트에서 다음 명령을 실행하여 Windows 원격 관리를 구성합니다.

    winrm qc -q

  2. 다음 명령을 실행하여 그룹 정책을 시작합니다.

    %SYSTEMROOT%\System32\gpedit.msc

  3. 컴퓨터 구성 노드에서 관리 템플릿 노드를 확장한 다음 Windows 구성 요소 노드를 확장한 다음 이벤트 전달 노드를 선택합니다.

  4. SubscriptionManager 설정을 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다. SubscriptionManager 설정을 사용하도록 설정하고 표시 단추를 클릭하여 설정에 서버 주소를 추가합니다. 이벤트 수집기 컴퓨터를 지정하는 설정을 하나 이상 추가합니다. SubscriptionManager 속성 창에는 설정의 구문을 설명하는 설명 탭이 포함되어 있습니다.

  5. SubscriptionManager 설정이 추가된 후 다음 명령을 실행하여 정책이 적용되었는지 확인합니다.

    gpupdate /force

이벤트 수집기 컴퓨터 구성

  1. Windows Server 도메인 컨트롤러의 관리자 권한 명령 프롬프트에서 다음 명령을 실행하여 Windows 원격 관리를 구성합니다.

    winrm qc -q

  2. 다음 명령을 실행하여 이벤트 수집기 서비스를 구성합니다.

    wecutil qc /q

  3. 원본 시작 구독을 만듭니다. 이벤트 뷰어 사용하거나 Wecutil.exe사용하여 프로그래밍 방식으로 수행할 수 있습니다. 프로그래밍 방식으로 구독을 만드는 방법에 대한 자세한 내용은 원본 시작 구독 만들기의 코드 예제를 참조하세요. Wecutil.exe 사용하는 경우 이벤트 구독 XML 파일을 만들고 다음 명령을 사용해야 합니다.

    wecutil csconfigurationFile.xml

    다음 XML은 원격 컴퓨터의 애플리케이션 이벤트 로그에서 이벤트 수집기 컴퓨터의 ForwardedEvents 로그로 이벤트를 전달하는 원본 시작 구독을 만드는 구독 구성 파일의 내용의 예입니다.

    <Subscription xmlns="http://schemas.microsoft.com/2006/03/windows/events/subscription">
        <SubscriptionId>SampleSISubscription</SubscriptionId>
        <SubscriptionType>SourceInitiated</SubscriptionType>
        <Description>Source Initiated Subscription Sample</Description>
        <Enabled>true</Enabled>
        <Uri>http://schemas.microsoft.com/wbem/wsman/1/windows/EventLog</Uri>
    
        <!-- Use Normal (default), Custom, MinLatency, MinBandwidth -->
        <ConfigurationMode>Custom</ConfigurationMode>
    
        <Delivery Mode="Push">
            <Batching>
                <MaxItems>1</MaxItems>
                <MaxLatencyTime>1000</MaxLatencyTime>
            </Batching>
            <PushSettings>
                <Heartbeat Interval="60000"/>
            </PushSettings>
        </Delivery>
    
        <Expires>2018-01-01T00:00:00.000Z</Expires>
    
        <Query>
            <![CDATA[
                <QueryList>
                    <Query Path="Application">
                        <Select>Event[System/EventID='999']</Select>
                    </Query>
                </QueryList>
            ]]>
        </Query>
    
        <ReadExistingEvents>true</ReadExistingEvents>
        <TransportName>http</TransportName>
        <ContentFormat>RenderedText</ContentFormat>
        <Locale Language="en-US"/>
        <LogFile>ForwardedEvents</LogFile>
        <AllowedSourceNonDomainComputers></AllowedSourceNonDomainComputers>
        <AllowedSourceDomainComputers>O:NSG:NSD:(A;;GA;;;DC)(A;;GA;;;NS)</AllowedSourceDomainComputers>
    </Subscription>
    

    참고

    원본 시작 구독을 만들 때 AllowedSourceDomainComputers, AllowedSourceNonDomainComputers/IssuerCAList, AllowedSubjectList 및 DeniedSubjectList가 모두 비어 있으면 "O:NSG:NSD:(A;; GA;;;D C)(A;; 조지아;;; NS)"는 AllowedSourceDomainComputers의 기본 보안 설명자로 사용됩니다. 기본 설명자는 도메인 컴퓨터 도메인 그룹의 멤버뿐만 아니라 로컬 네트워크 서비스 그룹(로컬 전달자의 경우)에게 이 구독에 대한 이벤트를 발생시킬 수 있는 기능을 부여합니다.

구독이 올바르게 작동하는지 확인하려면

  1. 이벤트 수집기 컴퓨터에서 다음 단계를 완료합니다.

    1. Windows Server 도메인 컨트롤러의 관리자 권한 명령 프롬프트에서 다음 명령을 실행하여 구독의 런타임 상태 가져옵니다.

      wecutil gr<subscriptionID>

    2. 이벤트 원본이 연결되어 있는지 확인합니다. 이벤트 원본이 연결될 구독을 만든 후 정책에 지정된 새로 고침 간격이 끝날 때까지 기다려야 할 수 있습니다.

    3. 다음 명령을 실행하여 구독 정보를 가져옵니다.

      wecutil gs<subscriptionID>

    4. 구독 정보에서 DeliveryMaxItems 값을 가져옵니다.

  2. 이벤트 원본 컴퓨터에서 이벤트 구독의 쿼리와 일치하는 이벤트를 발생합니다. 전달하려면 DeliveryMaxItems 이벤트 수를 발생시켜야 합니다.

  3. 이벤트 수집기 컴퓨터에서 이벤트가 ForwardedEvents 로그 또는 구독에 지정된 로그로 전달되었는지 확인합니다.

보안 로그 전달

보안 로그를 전달할 수 있도록 하려면 EventLog Reader 그룹에 NETWORK SERVICE 계정을 추가해야 합니다.

이벤트 원본이 이벤트 수집기 컴퓨터와 동일한 도메인에 없는 원본 시작 구독 설정

참고

이러한 지침에서는 관리자가 Windows Server 도메인 컨트롤러에 액세스할 수 있다고 가정합니다. 이 경우 원격 이벤트 수집기 컴퓨터 또는 컴퓨터가 도메인 컨트롤러에서 제공하는 도메인에 없으므로 서비스(services.msc)를 사용하여 Windows 원격 관리를 "자동"으로 설정하여 개별 클라이언트를 시작해야 합니다. 또는 각 원격 클라이언트에서 "winrm quickconfig"를 실행할 수 있습니다.

구독을 만들기 전에 다음 필수 조건을 충족해야 합니다.

  1. 이벤트 수집기 컴퓨터에서 관리자 권한 명령 프롬프트에서 다음 명령을 실행하여 Windows 원격 관리 및 이벤트 수집기 서비스를 구성합니다.

    winrm qc -q

    wecutil qc /q

  2. 수집기 컴퓨터에는 로컬 컴퓨터 인증서 저장소에 서버 인증 인증서(서버 인증 목적의 인증서)가 있어야 합니다.

  3. 이벤트 원본 컴퓨터에서 다음 명령을 실행하여 Windows 원격 관리를 구성합니다.

    winrm qc -q

  4. 원본 컴퓨터에는 로컬 컴퓨터 인증서 저장소에 클라이언트 인증 인증서(클라이언트 인증 목적의 인증서)가 있어야 합니다.

  5. 포트 5986이 이벤트 수집기 컴퓨터에서 열립니다. 이 포트를 열려면 명령을 실행합니다.

    netsh 방화벽 추가 포팅 TCP 5986 "Winrm HTTPS 원격 관리"

인증서 요구 사항

  • 로컬 컴퓨터의 개인 저장소에 있는 이벤트 수집기 컴퓨터에 서버 인증 인증서를 설치해야 합니다. 이 인증서의 주체는 수집기의 FQDN과 일치해야 합니다.

  • 로컬 컴퓨터의 개인 저장소에 있는 이벤트 원본 컴퓨터에 클라이언트 인증 인증서를 설치해야 합니다. 이 인증서의 주체는 컴퓨터의 FQDN과 일치해야 합니다.

  • 클라이언트 인증서가 이벤트 수집기 중 하나와 다른 인증 기관에서 발급된 경우 해당 루트 및 중간 인증서도 이벤트 수집기에도 설치해야 합니다.

  • 클라이언트 인증서가 중간 인증 기관에서 발급되었고 수집기가 Windows 2012 이상을 실행하는 경우 다음 레지스트리 키를 구성해야 합니다.

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\ClientAuthTrustMode(DWORD) = 2

  • 서버와 클라이언트가 모두 모든 인증서에서 해지 상태 성공적으로 검사 수 있는지 확인합니다. certutil 명령을 사용하면 오류를 해결하는 데 도움이 될 수 있습니다.

이 문서에서 자세한 내용을 찾습니다. https://technet.microsoft.com/library/dn786429(v=ws.11).aspx

이벤트 수집기에서 수신기 설정

  1. 다음 명령을 사용하여 인증서 인증을 설정합니다.

    winrm set winrm/config/service/auth @{Certificate="true"}

  2. 서버 인증 인증서 지문이 있는 WinRM HTTPS 수신기가 이벤트 수집기 컴퓨터에 있어야 합니다. 다음 명령을 사용하여 확인할 수 있습니다.

    winrm e winrm/config/listener

  3. HTTPS 수신기가 표시되지 않거나 HTTPS 수신기의 지문이 수집기 컴퓨터에서 서버 인증 인증서의 지문과 같지 않은 경우 해당 수신기를 삭제하고 올바른 지문으로 새 수신기를 만들 수 있습니다. https 수신기를 삭제하려면 다음 명령을 사용합니다.

    winrm delete winrm/config/Listener? Address=*+Transport=HTTPS

    새 수신기를 만들려면 다음 명령을 사용합니다.

    winrm create winrm/config/Listener? Address=*+Transport=HTTPS @{Hostname="<수집>기의 FQDN"; CertificateThumbprint="<서버 인증 인증서>의 지문"}

이벤트 수집기에서 인증서 매핑 구성

  1. 새 로컬 사용자를 만듭니다.

  2. 컴퓨터의 "신뢰할 수 있는 루트 인증 기관" 또는 "중간 인증 기관"에 있는 인증서를 사용하여 인증서 매핑을 만듭니다.

    이는 이벤트 원본 컴퓨터에 설치된 인증서를 발급한 루트 또는 중간 CA의 인증서 입니다(혼동을 피하기 위해 인증서 체인의 인증서 바로 위에 있는 CA임).

    winrm create winrm/config/service/certmapping? 발급CA 인증서>의 Issuer=<Thumbprint+Subject=*+URI=* @{UserName="<username>"; Password="<password>"} -remote:localhost

  3. 클라이언트에서 다음 명령을 사용하여 수신기 및 인증서 매핑을 테스트합니다.

    winrm g winrm/config -r:https://<이벤트 수집기 FQDN>:5986 -a:certificate -certificate:"<클라이언트 인증 인증서>의 지문 "

    그러면 이벤트 수집기의 WinRM 구성이 반환됩니다. 구성이 표시되지 않으면 이 단계를 지나서 이동하지 마세요.

    이 단계에서는 어떻게 됩니까?

    • 클라이언트가 이벤트 수집기 에 연결하고 지정된 인증서를 보냅니다.
    • 이벤트 수집기는 발급 CA를 찾고 이 일치하는 인증서 매핑인지 확인합니다.
    • 이벤트 수집기는 클라이언트 인증서 체인의 유효성을 검사하고 상태 해지합니다.
    • 위의 단계가 성공하면 인증이 완료됩니다.

참고

인증 방법에 대해 불평하는 액세스 거부 오류가 표시될 수 있으며, 이는 오해의 소지가 있을 수 있습니다. 문제를 해결하려면 이벤트 수집기에서 CAPI 로그를 검사.

  1. winrm enum winrm/config/service/certmapping 명령을 사용하여 구성된 인증서 매핑 항목을 나열합니다.

이벤트 원본 컴퓨터 구성

  1. 관리자 계정으로 로그온하고 로컬 그룹 정책 편집기(gpedit.msc)를 엽니다.

  2. 로컬 컴퓨터 정책\컴퓨터 구성\관리 템플릿\Windows 구성 요소\이벤트 전달로 이동합니다.

  3. "대상 구독 관리자의 서버 주소, 새로 고침 간격 및 발급자 인증 기관 구성" 정책을 엽니다.

  4. 정책을 사용하도록 설정하고 구독관리자 "표시..."를 클릭합니다. 단추.

  5. SubscriptionManagers 창에서 다음 문자열을 입력합니다.

    Server=HTTPS://<이벤트 수집기 서버>의 FQDN :5986/wsman/SubscriptionManager/WEC,Refresh=<새로 고침 간격(초>) ,IssuerCA=<발급 CA 인증서의 지문>

  6. 다음 명령줄을 실행하여 로컬 그룹 정책 설정을 새로 고칩니다.Gpupdate /force

  7. 이러한 단계에서는 원본 컴퓨터에서 애플리케이션 및 서비스 로그\Microsoft\Windows\Eventlog-ForwardingPlugin\Operational 로그를 이벤트 뷰어 다음 메시지와 함께 이벤트 104를 생성해야 합니다.

    "전달자가 주소 <FQDN>의 구독 관리자에 성공적으로 연결한 다음 이벤트 100에 "구독 <sub_name> 성공적으로 생성되었습니다."라는 메시지가 표시됩니다.

  8. 이벤트 수집기에서 구독 런타임 상태가 이제 1대 활성 컴퓨터로 표시됩니다.

  9. 이벤트 수집기에서 ForwardedEvents 로그를 열고 원본 컴퓨터에서 전달된 이벤트가 있는 경우 검사.

이벤트 원본에서 클라이언트 인증서의 프라이빗 키에 대한 권한 부여

  1. 이벤트 원본 컴퓨터에서 로컬 컴퓨터에 대한 인증서 관리 콘솔 엽니다.
  2. 클라이언트 인증서를 마우스 오른쪽 단추로 클릭한 다음 프라이빗 키 관리를 클릭합니다.
  3. NETWORK SERVICE 사용자에게 읽기 권한을 부여합니다.

이벤트 구독 구성

  1. 이벤트 수집기에서 이벤트 뷰어 열고 구독 노드로 이동합니다.
  2. 구독을 마우스 오른쪽 단추로 클릭하고 "구독 만들기..."를 선택합니다.
  3. 새 구독에 대한 이름 및 선택적 설명을 제공합니다.
  4. "원본 컴퓨터 시작됨" 옵션을 선택하고 "컴퓨터 그룹 선택..."을 클릭합니다.
  5. 컴퓨터 그룹에서 "도메인이 아닌 컴퓨터 추가..."를 클릭합니다. 이벤트 원본 호스트 이름을 입력합니다.
  6. "인증서 추가..."를 클릭합니다. 클라이언트 인증서를 발급하는 인증 기관의 인증서를 추가합니다. 인증서 보기를 클릭하여 인증서의 유효성을 검사할 수 있습니다.
  7. 인증 기관에서 확인을 클릭하여 인증서를 추가합니다.
  8. 컴퓨터 추가가 완료되면 확인을 클릭합니다.
  9. 구독 속성으로 돌아가서 이벤트 선택...을 클릭합니다.
  10. 이벤트 수준, 이벤트 로그 또는 이벤트 원본, 이벤트 ID 및 기타 필터링 옵션을 지정하여 이벤트 쿼리 필터를 구성합니다.
  11. 구독 속성으로 돌아가서 고급...을 클릭합니다.
  12. 원본 이벤트에서 이벤트 수집기로 이벤트 배달을 위한 최적화 옵션 중 하나를 선택하거나 기본 기본값인 기본값을 그대로 둡니다.
    1. 대역폭 최소화: 대역폭을 절약하기 위해 이벤트가 전달되는 빈도가 줄어듭니다.
    2. 대기 시간 최소화: 이벤트가 발생하는 즉시 전달되어 이벤트 대기 시간을 줄입니다.
  13. 프로토콜을 HTTPS로 변경하고 확인을 클릭합니다.
  14. 확인을 클릭하여 새 구독을 만듭니다.
  15. "런타임 상태"를 마우스 오른쪽 단추로 클릭하고 선택하여 구독의 런타임 상태 확인합니다.