• 検索結果がありません。

One Identity syslog-ng PE Windows Event Collector Administration Guide

N/A
N/A
Protected

Academic year: 2021

シェア "One Identity syslog-ng PE Windows Event Collector Administration Guide"

Copied!
34
0
0

読み込み中.... (全文を見る)

全文

(1)

syslog-ng Premium Edition

Version 7

Windows Event Collector

管理者ガイド

Rev.1.0

(2)

目次

1 イントロダクション ... 1 2 Windows イベントコレクターのインストール ... 3 3 Windows イベントコレクターの用の SSL 証明書の生成 ... 4 4 イベント送信元コンピューターの設定 ... 10 5 Windows イベントコレクターの設定 ... 14 6 syslog-ng PE の設定 ... 20 7 Windows イベントコレクターの開始/停止 ... 22 8 Windows イベントコレクター内のメッセージ形式 ... 23 9 フローコントロール ... 24 10 性能 ... 25 11 制限事項 ... 26 12 Windows イベントコレクターのトラブル対応 ... 27 13 WEC 設定例 ... 30 変更履歴 版 発行日 変更内容 Rev.1.0 2020/10/19 新規作成

(3)

お問合せ先、およびカスタマーポータル

ジュピターテクノロジー株式会社(Jupiter Technology Corp.)

住所: 〒183-0023 東京都府中市宮町 2-15-13 第 15 三ツ木ビル 8F URL: http://www.jtc-i.co.jp/ 電話番号: 042-358-1250 FAX 番号: 042-360-6221 ■ご購入のお問い合わせ: お問い合わせフォーム https://www.jtc-i.co.jp/contact/scontact.php メール sales@jtc-i.co.jp ■製品サポートのお問い合わせ: カスタマーポータル https://www.jtc-i.co.jp/support/customerportal/ ■評価版のダウンロード: https://www.jtc-i.co.jp/support/download/

(4)

1 イントロダクション

Windows イベントコレクター(WEC:Windows Event Collecor)は、Microsoft Windows プラットフォー ム用のツールとしてログの収集と転送の機能を提供します。このツールは、Windows ベースのホ ストのログメッセージを、HTTPS(TLS による暗号化と相互認証)を用いて収集し、syslog-ng Premium Edition (syslog-ng PE) サーバーに転送します。これを Windows 用語では ソース開始 型プッシュ型サブスクリプション(source-initiated push subscriptions)と呼びます。WEC の制限の 詳細は、制限事項 を参照してください。

syslog-ng Agent for Windows と異なり、Windows イベントコレクターはスタンドアローンのツール で、Windows ベースのホストにインストールする必要はありません。これは、組織のポリシーにより 3rd パーティーのツールのインストールを制限または禁止している場合に有利です。

Windows イベントコレクターと syslog-ng Agent for Windows の別の違いとして、WEC は Windows イベントのログのみを転送するのに対し、syslog-ng Agent for Windows は Windows イベントのロ グと Windows ホストからのファイルも同様に syslog-ng PE サーバーに転送する点があります。

Windows イベントコレクターは Windows ホストと syslog-ng PE サーバーの間に置かれ、WinRM を 用いてリモートの Windows のログメッセージを受取、syslog-ng PE 7.0 に転送します。

(5)

WEC を使用した場合の Windows イベントログの受信と syslog-ng PE への転送の動作概要 は以下の通りです。 1. Windows イベントの送信元コンピューターの設定 Windows ホストの設定の詳細は、イベント送信元コンピューターの設定 を参照して ください。 2. Windows イベントコレクターをイベントログの収集と転送用のサーバーとして設定し ます。 Windows イベントコレクターの構成と設定の詳細は、Windows イベントコレクターの インストール、Windows イベントコレクターの用の SSL 証明書の生成、Windows イ ベントコレクターの設定 を参照してください。 3. Windows イベントコレクターは、Windows ホストからのイベントログサブスクリプショ ン の要求を受け取ります。 4. Windows イベントコレクターは、Windows ホストとイベントの転送設定についてやり 取りします。例えば、どのイベントを転送するかなど。 5. Windows イベントコレクターは転送されたイベントログを受取り、その生ログを Unix データグラムソケットに書き込みます。

6. syslog-ng PE は、windowsevent() と呼ばれるソースを用いて Unix データグラムソ ケットからイベントログを読み出します。syslog-ng PE サーバーの設定の詳細は、

syslog-ng PE の設定 を参照してください。

7. syslog-ng PE は、XML パーサーを用いてログを Key-Value ペアに変換します。 XML パーサーの詳細は、syslog-ng PE の管理者ガイドの"XML パーサー" を参照 してください。

(6)

2

Windows イベントコレクターのインストール

前提条件:

 syslog-ng PE version 7.0.6 以上  glibc version 2.12 以上

glibc version 2.12 は、syslog-ng PE 7.0 がサポートしている全プラットフォームで利用で きます。ただし、Red Hat Enterprise Linux の場合、version 6.9 以上へのアップグレード が必要です。

Windows イベントコレクターは、syslog-ng PE version 7.0.6 以降のインストーラに含まれていま す。SysV init スクリプトと systemd サービスファイルが提供されており、自動的にインストールされ ます。これにより、syslog-ng PE がインストールされると、WEC もインストールされます。 ただし、 syslog-ng-wec はブート時に開始されません。

Windows イベントコレクターのインストール

1. syslog-ng-wec をブート時に開始するには、以下のコマンドを用いて init スクリプ トを登録します。

 systemd ベースのシステムの場合: systemctl enable syslog-ng-wec  SysV ベースのシステムの場合: chkconfig または update-rc.d

syslog-ng-wec を手動で開始する方法の詳細は、Windows イベントコレクターの 開始/停止 を参照してください。

(7)

3

Windows イベントコレクター用の SSL 証明書の生成

Windows ベースのホストが Windows イベントコレクターと最初に通信を始める場合、お互いの証 明書を交換してそれを確認して相互に認証します。このプロセスは Windows ホストが WEC ツール の証明書を要求して確認することから始まります。この確認が成功後、Windows ホストから自身の 証明書を WEC に確認用に送付します。 注意:

Windows ホストが WEC ツールの証明書の認証に失敗した場合、詳細は Windows イベントロ グを確認してください。イベントログの詳細は、Windows イベントコレクターのトラブル対応 を 参照してください。

この章で説明する例は、証明書の生成に OpenSSL を使用します。なお、Windows Public Key Infrastructure (PKI)を用いて証明書を生成することもできます。 注意: このセクションの例は、有効期限がデフォルトの 365 日の証明書の作成を示していま す。ただ、ほとんどは数年間動作し続けるため、365 日ごとに証明書を更新する必要は ありません。毎年証明書を更新するのを避けるため、ホストの証明書の有効期限をデ フォルトの 365 日より長くすることを勧めています(例をご覧ください)。 WEC 用に SSL 証明書を生成するには、次の手順を実施してください。 Windows イベントコレクター用に SSL 証明書を生成 1. サーバーとクライアント用に 2 つの証明書のテンプレートを生成します。 注意: ここに紹介するテンプレートは例であり、サンプルファイル *opts.cnf の全項目が必 須ではありません。例えば、2 つの DNS インスタンスを定義する必要はありません。 server-certopts.cnf の内容: [req] default_bits = 4096 default_md = sha256 req_extensions = req_ext keyUsage = keyEncipherment,dataEncipherment basicConstraints = CA:FALSE

(8)

[ req_ext ]

subjectAltName = @alt_names

extendedKeyUsage = serverAuth,clientAuth

[ alt_names ]

DNS.1 = <1st DNS hostname of server (preferably FQDN)> ...

DNS.<N> = <Nth DNS hostname of server (preferably FQDN)> IP.1 = <1st IP of server> ... IP.<N> = <Nth IP of server> [dn] 例: [req] default_bits = 4096 default_md = sha256 req_extensions = req_ext keyUsage = keyEncipherment,dataEncipherment basicConstraints = CA:FALSE distinguished_name = dn [ req_ext ] subjectAltName = @alt_names extendedKeyUsage = serverAuth,clientAuth [ alt_names ] DNS.1 = windowseventcollector.widgits DNS.2 = wec.widgits IP.1 = 10.64.10.2 [dn] client-certopts.cnf の内容: [req] default_bits = 4096

(9)

keyUsage = keyEncipherment,dataEncipherment basicConstraints = CA:FALSE distinguished_name = dn [ req_ext ] subjectAltName = @alt_names extendedKeyUsage = serverAuth,clientAuth [ alt_names ]

DNS.1 = <1st DNS hostname of client (preferably FQDN)> ...

DNS.<N> = <Nth DNS hostname of client (preferably FQDN)> IP.1 = <1st IP of client> ... IP.<N> = <Nth IP of client> [dn] 例: [req] default_bits = 4096 default_md = sha256 req_extensions = req_ext keyUsage = keyEncipherment,dataEncipherment basicConstraints = CA:FALSE distinguished_name = dn [ req_ext ] subjectAltName = @alt_names extendedKeyUsage = serverAuth,clientAuth [ alt_names ] DNS.1 = windowsclient01.widgits DNS.2 = client01.widgits IP.1 = 10.64.10.11

(10)

2. 認証局(CA)を生成:

$ openssl genrsa -out ca.key 4096

$ openssl req -x509 -new -nodes -key ca.key -days 3650 -out ca.crt -subj '<subject name for CA cert (must be formatted as /type0=value0/type1=value1/type2=..., characters may be escaped by ¥ (backslash), no spaces are skipped)>'

例:

$ openssl genrsa -out ca.key 4096

$ openssl req -x509 -new -nodes -key ca.key -days 3650 -out ca.crt -subj '/C=AU/ST=Victoria/L=Melbourne/O=Internet Widgits Pty Ltd/OU=Operations/CN=Operations Root CA'

任意のディレクトリに ca.crt ファイルのコピーを置きます。そのディレクトリをメモします。 理由は WEC コンフィグファイルの cadir オプションでそのディレクトリを参照する必要が あるためです。

3. CA のサムプリントを保存:

$ openssl x509 -in ca.crt -fingerprint -sha1 -noout | sed -e 's/¥://g' ログメッセージを Windows イベントコレクターに送信する送信元コンピューターを設定する のにフィンガープリント(fingerprint)が必要になります。 詳細は、イベント送信元コンピューターの設定 を参照してください。 4. サーバーの証明書を生成: 注意: 共通名(Common Name)は、Windows イベントコレクターサーバーの FQDN(または IP アドレス)にする必要があります。

$ openssl req new newkey rsa:4096 nodes out server.csr -keyout server.key -subj '<subject name for server cert (must be formatted as /type0=value0/type1=value1/type2=..., characters may be escaped by ¥ (backslash), no spaces are skipped)>'

(11)

$ openssl x509 req in server.csr out server.crt CA ca.crt CAkey ca.key CAcreateserial extfile servercertopts.cnf -extensions req_ext -days 365

例:

$ openssl req new newkey rsa:4096 nodes out server.csr -keyout server.key -subj

'/C=AU/ST=Victoria/L=Melbourne/O=Internet Widgits Pty Ltd/OU=Operations/CN=windowseventcollector.widgits'

$ openssl x509 req in server.csr out server.crt CA ca.crt CAkey ca.key CAcreateserial extfile servercertopts.cnf -extensions req_ext -days 365

5. クライアントの証明書を生成:

注意:

共通名(Common Name)は、クライアントの FQDN(または IP アドレス)にする必要が あります。

$ openssl req new newkey rsa:4096 nodes out client.csr -keyout client.key -subj '<subject name for client cert (must be formatted as /type0=value0/type1=value1/type2=..., characters may be escaped by ¥ (backslash), no spaces are skipped)>'

$ openssl x509 req in client.csr out client.crt CA ca.crt CAkey ca.key CAcreateserial extfile clientcertopts.cnf -extensions req_ext -days 365

例:

$ openssl req new newkey rsa:4096 nodes out client.csr -keyout client.key -subj

'/C=AU/ST=Victoria/L=Melbourne/O=Internet Widgits Pty Ltd/OU=Operations/CN=windowsclient01.widgits'

$ openssl x509 req in client.csr out client.crt CA ca.crt CAkey ca.key CAcreateserial extfile clientcertopts.cnf -extensions req_ext -days 365

(12)

6. クライアントの証明書を Windows Certificate Manager ツールが認識できる形式にエキス ポート:

$ openssl pkcs12 export inkey client.key in client.crt -certfile ca.crt -out client.p12

(13)

4 イベント送信元コンピューターの設定

前提条件:

 Microsoft Windows 7 以降、Windows Server 2019 まで

Windows ホストからイベントログを収集する場合、ログを送信する Windows クライアントはイベント 送信元コンピューターとして動作します。WEC ツールは標準の Windows イベントコンテナーからメ ッセージを集めて転送します。 Windows イベントコレクターに接続することができる Windows ホストの数には制限はありません。 イベントソースを構成するには、次の手順を実施します。 イベントソースコンピューターの設定:

1. Microsoft Management Console (mmc.exe)を開き、 File > Add/Remove Snap-ins を選 択、 そして、Certificates snap-in を追加します。

2. Computer Account を選択します。

3. Personal ノードを右クリックし、All Tasks > Import を選択します。

4. クライアント証明書(client*.p12)を見つけて選択し、このファイルをインポートします。 5. PKCS #12 archive にも、CA 証明書が同様に含まれています。この CA 証明書をインポー

ト後に Trusted Root Certification Authorities ノードに移動します。

6. NetworkService access をクライアント認証証明書の private key file に付与してください。

注意:

CA 証明書ではなく、クライアント証明書の private key file にのみ、アクセス権を付与 するように注意してください。

a. certmgr で、クライアント証明書を右クリックし、All Tasks > Manage Private Keys... を選択します。

b. "NETWORK SERVICE"に read permission を追加してください。

注意:

(14)

Figure 2: "NETWORK SERVIVE"に read permission を追加

7. セキュリティログを転送:

a. CompMgmt.msc で、Local Users and Group の下、Groups > Event Log Readers を選 択します。Event Log Readers Properties をオープンするためです。

(15)

Figure 3: "Network Service"アカウントを Event Log Readers group に追加

c. クライアント コンピューターをリブートします。

8. 次のコマンドを、権限を上げたコマンドプロンプトから実行します。 winrm qc -q

winrm set winrm/config/client/auth @{Certificate="true"} 9. gpedit.msc をオープンします。

10. Computer Configuration ノードの下、Administrative Templates ノードを展開します。そし て、Windows Components ノードを展開し、Event Forwarding ノードを選択します。 11. SubscriptionManagers 設定を選択して有効にします。Show ボタンをクリックしてサブスク

リプション(Windows イベントコレクターの用の SSL 証明書の生成)を追加します: Server=https://<FQDN of the

collector>:5986/wsman/SubscriptionManager/WEC, Refresh=<Refresh interval in seconds>,IssuerCA=<Thumbprint of the root CA>

例:

Server=HTTPS://wec.balabit:5986/wsman/SubscriptionManager/WEC,Re fresh=60, IssuerCA=A814E609311FD3A89FFD0297974524E4F2D2BA9D

(16)

Figure 4: SubscriptionManagers にサブスクリプションを追加

注意:

Windows イベントを複数のイベントコレクター(WEC など)に転送するために複数のサ ブスクリプションを設定したい場合、ここでその設定ができます。

(17)

5

Windows イベントコレクターの設定

イベントの送信元コンピューターの設定をしたら、次はイベントコレクターの設定になります。この 場合、syslog-ng PE 用の Windows イベントコレクターになります。

注意:

WEC の設定ファイルは YAML ベースです。YAML はインデントにタブではなくスペース(空白 文字)を使用するので注意してください。 WEC を設定するには、次のオプションを使用します。 wec.yaml ファイルの例については、WEC 設定例 を参照してください。

server

Type: string Default N/A

説明: WEC が動作している ホスト名、IP アドレス、または、FDQN。SSL 証明書の Common Name と一致している必要があります。

port

Type: integer Default 5986 説明: WEC が動作しているサーバーでリスニングしているポート番号。

keyfile

Type: string Default N/A 説明: WEC が動作しているサーバーの暗号化していないプライベートキーを含んでいるファイル へのパス。そのファイルは PEM 形式です。

certfile

Type: string Default N/A 説明: WEC が動作しているサーバーの X.509 証明書を含んでいるファイルへのパス。そのファイ ルは PEM 形式です。

(18)

cadir

Type: string Default N/A 説明: PEM 形式の trusted CA 証明書があるディレクトリへのパス。

log

Type: map Default N/A 説明: WEC の内部ログの処理方法を指定するオプション:  level  file

WEC は内部ログメッセージを stderr に出力します。ログを stderr と並行して出力するオプション file を指定できます。systemd のプラットフォームで WEC を、systemctl を使って起動する場合、 stderr は systemd-journal にリダイレクトされるので、WEC の内部ログはそこにあります。

level

Type: debug | info

Default info 説明: WEC のアプリケーション ログ レベルです。 値の例:  debug: 詳細な情報、WEC のデバッグや問題調査の時に有効。  info: WEC の初期化に関する基本的な情報。初期化に続いて、問題が発生しない限り、 画面に情報は表示されません。 file Type: string Default N/A 説明: WEC が内部ログメッセージを書き込むファイルへのパス。ログファイルは syslog-ng PE に より自動的に作成されます。 file()ソースを用いてこのファイルを syslog-ng に転送することができます。

(19)

eventdestination

Type: map Default N/A 説明: WEC へ転送されたイベントログの保存方法を指定するオプションです。  file  unixdatagram  queuesize file Type: string Default N/A 説明: WEC が Windows ホストから受信したイベントを書き込むファイルへのパス。このオプション はデバッグ用のみに使用してください。WEC が syslog-ng PE に何を送信したか確認したい時に使 用してください。 ログをファイルと Unix データグラムソケットに両方に平行して送ることが可能です。 unixdatagram Type: string Default N/A

説明: Windows イベントを受信する Unix データグラムソケットへのパスです。WEC はここで指定 した Unix データグラムソケットへ受信したイベントを書き込みます。リスニング用のソケットは syslog-ng PE で自動的に作成されます。 ログをファイルと Unix データグラムソケットに両方に平行して送ることが可能です。 queuesize Type: integer Default 10000 説明: デスティネーション用メモリキューが保持できるイベントの数です。queuesize の主目的は、 データをメモリに書き込む速度を速くしピークを平準化することです。 デフォルトの値を使用することを推奨します。 フローコントロールの詳細は、フローコントロール を参照してください。

(20)

subscriptions

Type: map Default N/A 説明: WEC で設定したサブスクリプションに関連したオプション:  name  computers  contentformat  heartbeats  connectionretry  batchsizelimit  batchtimeoutlimit  queries  readexistingevents 注意: 同じ Windows ホストから来るイベントに複数のサブスクリプションを設定できます。イベントが1 つ以上のサブスクリプションに一致した場合、一致した全てのイベントログが WEC に来ます。 name Type: string Default N/A 説明: WEC 内のユニークなサブスクリプション名。 computers

Type: list of string

Default N/A

説明: サブスクリプションの起動を許可された非ドメインコンピューターの DNS 名を指定する文字 列のリスト。WEC がイベントログを受信したい Windows ホストを指定します。

(21)

contentformat

Type: Events | RenderedText

Default N/A 説明:値は戻されるイベントのフォーマットを指定します。 値の例:  RenderedText: イベントに添付されるローカライズされた文字列(イベント説明など)  Events: ローカライズされた文字列が添付されていないイベント RenderedText を設定することを推奨します。 heartbeats Type: integer Default N/A 説明: サブスクリプション用のインターバルを秒で指定します。 connectionretry Type: integer Default N/A 説明: WEC が Windows ホストに再接続を試みるインターバルを秒で指定します batchsizelimit Type: integer Default 0 (無制限を意味します) 説明: イベントサブスクリプション内のバッチで提供されるアイテムの最大数を指定します。 テストやデバッグをしたい場合のみ 1 を設定してください。 注意: このオプションは Windows 側に強制しません。Windows 側では推奨値として処理します。唯一 の例外は値が1の場合です。 batchtimeoutlimit Type: integer Default N/A 説明: イベントのバッチ提供で許されるレーテンシーの最大値を秒で指定します。 注意: このオプションは Windows 側に強制しません。Windows 側では推奨値として処理します。

(22)

queries Type: string Default N/A 説明: サブスクリプション用のクエリ文字列を指定します。 以下を実施します。  この文字列を手動でタイプします。または、

 Windows の Create Custom View ポップアップの XML タブからこの文字列をコピーしま す。

クエリの例として以下の Windows ブログを確認してください。

 Microsoft TechNet blog post Advanced XMl filtering in the Windows Event Viewer

 Microsoft Developer Network article Wecutil.exe

readexistingevents

Type: true | false

Default false

説明: 値が true の場合、もし問題のサブスクリプションがまだ読まれていない時、イベントソース から全てのイベントを読み込みます。値が false の場合、将来のこれから到着するイベントのみが 提供されます。ただ、このサブスクリプションが persist file に記載されていると、このオプションに は何の効果もありません。

(23)

6

syslog-ng PE の設定

前提条件:

syslog-ng Premium Edition version 7.0.6 以降。

Windows イベントを読んで受け取れるように syslog-ng PE を有効にするには、ソースとして windowsevent() を設定する必要があります。 Syslog-ng PE を設定 1. デフォルトの 5986 TCP ポートが WEC からアクセスできるようにします。これは、Windows イベントコレクターが syslog-ng PE サーバーにイベントを転送するように初期化されてい るためです。 2. windowsevent()ソースを設定します。 source s_wec { windowsevent(); }; windowsevent() ソースは次のオプションが利用可能です:  unix-domain-socket(): メッセージを読むための Unix ドメインソケットへのパス。 デフォルト値は /opt/syslog-ng/var/run/wec.sock  prefix(): key-value ペアに追加したいプリフィックス。 デフォルト値は ".windowsevent."

Windows イベントログを SDATA に送りたい場合、prefix(".SDATA.") を設定しま す。これは、例えば Windows イベントログを syslog-ng Store Box に転送する場 合に便利です。

windowsevent() ソースの詳細は、syslog-ng PE 管理者ガイド の "windowsevent: Collecting Windows event logs" を参照してください。

(24)

3. windowsevent()ソース s_wec を有効にするために syslog-ng.conf で log パスを設定しま す。設定しない場合、WEC は動作せず接続が拒否されます。 設定例: source s_wec { windowsevent(); }; log { source(s_wec); destination { file("/var/log/example.log"

template("$(format-json --scope dot-nv-pairs)¥n") );

}; };

(25)

7

Windows イベントコレクターの開始/停止

Windows イベントコレクターを手動で開始と停止をするには、次のコマンドを用いてください。

systemd service for systemd-based systems:  WEC 開始: systemctl start syslog-ng-wec  WEC 停止: systemctl stop syslog-ng-wec

SysV init for SysV-based systems:

 WEC 開始: /etc/init.d/syslog-ng-wec start  WEC 停止: /etc/init.d/syslog-ng-wec stop

WEC をフォアグラウンドで開始するには以下を実行します: wec -c /path/to/wec.yaml

(26)

8

Windows イベントコレクター内のメッセージ形式

syslog-ng Premium Edition (syslog-ng PE)用の Windows イベントコレクターは、Windows 7 以降の プラットフォームをサポートしています。Windows 7 からイベントのロギングは XML ベースになり、 イベントログメッセージは WEC に XML 形式で届きます。これを syslog-ng PE に転送する時、 syslog-ng PE は、XML パーサーを使用して解析し key-value ペアにします。

syslog-ng PE 内でイベントデータが利用可能になると、マクロやリライトルールを用いて、色々な 方法で柔軟にデータを変更や整形できます。

WEC ツールで処理されるログデータは、syslog-ng Agent for Windows で収集し利用できるデータ と異なる場合がありますが、Windows イベントコレクターは、生データを処理する点に関して、高い 自由度と柔軟性を備えています。

(27)

9 フローコントロール

Windows イベントコレクターツールは、イベントログのロスを最小限にするために、フローコントロ ールを適用しています。 WEC は定期的(1秒毎)にデータグラムソケットをポーリングして Windows イベントがあるかどうか チェックします。syslog-ng PE が開始されソケットが作成されると、WEC はソケットに接続して Windows ホストから来る接続を受け入れます。データグラムソケットが無い場合、WEC は接続要 求を拒否します。

syslog-ng PE が動作しておりソケットが存在しているが、syslog-ng PE が Unix データグラムソケッ トを読めない場合、WEC はデータグラムソケットのカーネルバッファを満たし、queuesize の容量分 のログメッセージをメモリに保存します。全てのバッファがフルになると WEC はメッセージのロスを 避けるために HTTP 接続からのメッセージの読み込みを停止します。 データグラムソケットのバッファサイズは、Linux カーネルパラメーターで決められます: rmem_* の値(最大/デフォルト)と net.unix.max_dgram_qlen の数です。 信頼性 WEC はメッセージがソケットバッファに入ると、届けられたとしてメッセージにフラグを立てます。 syslog-ng PE が何かの理由でソケットを読まず(例えば、まだフローコントロールされている)、 syslog-ng PE が停止している場合、ソケットの内容(カーネルバッファ内のメッセージ、syslog-ng PE の読み出しが未了のメッセージ)は失われます。 以上のような状況で、再起動が必要になります。Windows イベントコレクターと syslog-ng PE を停 止する推奨手順は以下です。 1. Windows イベントコレクター 2. syslog-ng PE syslog-ng PE が停止するまでの時間に全てのソケットを読んだという保証はされませんが、少なく ともその機会を最大化することはできます。

(28)

10 性能

性能は Windows ホストが WEC に送信するイベントログメッセージ数と XML パーサーの処理能力 に依存します。

我々の性能測定では、syslog-ng Premium Edition (syslog-ng PE)の XML パーサーは、15,000~ 20,000 イベント/秒を解析する能力があることを示しています。XML パーサーの正確な能力は、 Windows ログメッセージの複雑さに依存し、また、syslog-ng PE と WEC が動作するハードウェア の性能にも同様に依存します。15,000~20,000 イベント/秒の限界に達した時は、以下のような対 策を取ることを推奨します。

batchsizelimit パラメーターにセットした値は、Windows ホストでは推奨としてのみ扱われるので、 イベント元のコンピューターから到着するメッセージの総数を直接制御する方法はありません。

可能性のある対応策は、複数の WEC サーバーを起動し、syslog-ng PE で複数の windowsevent() ソースを作成することです。この方法により、Windows ホストを複数の WEC と syslog-ng PE サー バーに分散でき、各サーバーの負荷を軽減できます。

syslog-ng PE サービス毎に複数の WEC サービスを動作させるには、自分で init script を作成す る必要があります。これは、WEC と一緒に提供されている init script は、syslog-ng PE サービス 毎に一つの WEC サービスだけを起動するようになっているためです。

(29)

11 制限事項

syslog-ng Premium Edition (syslog-ng PE)用の Windows イベントコレクターは、現在、次の制限が あります。  ソース開始型のプッシュ型サブスクリプションのみをサポートしています。(Windows ホスト が WEC サーバー に接続します。) この利点は、ファイアウォールのルールが少なくなるところです。  HTTPS と SSL 証明書ベースの認証のみをサポートしています。現時点では kerberos 認 証は未サポートです。  イベントの圧縮は未サポートです。

 batchsizelimit と batchtimeoutlimit オプションは、Windows ホストに強制力がありません: Windows はこれらの値を推奨としてのみ扱い処理します。  Windows 7 と Windows 2008 プラットフォームには既知の問題があります。何回か再接続 の後(WEC が速くリスタートした場合)、リモートの送信元はある期間ログの転送を停止し ます。この場合、Windows RM サービスを再起動すると改善されます。 この問題は、Windows マシン間でも発生します。これは Microsft にも報告され、解決方法 を待っています。

(30)

12

Windows イベントコレクターのトラブル対応

WEC を使用中に問題が発生した時は、WEC をデバックモードで動作させ詳細なログメッセージを 取得します。 1. ログレベルを debug にセットします: log: level: "debug" 2. WEC を開始します。 インターバル毎に次のデバックメッセージが表示されます。

DEBUG subscriptionEndpoint {"clientAddress": "..."} DEBUG actionHandler {"messageID": "...", "action":

"http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate" } DEBUG enumerate これは、クライアントが接続し、サブスクリプションリストをリクエストしたことを意味して います。 3. 上記のようなメッセージがインターバルの時間内に見えない場合、クライアントのイベ ントビューアーで次のチャネルを確認してください:

 Applications and Services Logs\Microsoft\Windows\Eventlog-ForwardingPlugin

 Applications and Services Logs\Microsoft\Windows\Windows Remote Management

いくつかの共通するエラーコードとそれらの説明:

 5004: クエリ XML で指定したチャネルは存在しない、または Windows クライアントで読 むことができない。これは"Network Service"にセキュリティログを読む権限がないこと が原因になります。

"Network Service"アカウントを Event Log Readers グループに追加し、変更が有効に なるようにコンピューターを再起動します。

 15008: サブスクリプションのクエリ XML が不正です。

 995(HTTP error 12186): "Network Service"はクライアントの証明書を読む権限を持っ ていません。

(31)
(32)

 HTTP error 403: もし全てが正しくセットされていれば、プロキシ―はセットされ、送信 元は WEC の代わりにプロキシ―への接続を試みる可能性があります。

ヒント:

時々プロキシ―の設定は GUI ウィンドウに表示されないことがあります。確認する には、netsh winhttp show proxy を使用してください。プロキシ―設定をリセットす るには、netsh winhttp reset proxy を使用してください。

(33)

13

WEC 設定例

server: "wec.mydomain" port: 5986 keyfile: "/opt/syslog-ng/etc/server.key" certfile: "/opt/syslog-ng/etc/server.crt" cadir: "/opt/syslog-ng/etc/cadir" log: level: "info" file: "/opt/syslog-ng/var/wec.log" eventdestination: unixdatagram: "/opt/syslog-ng/var/run/wec.sock" subscriptions: - name: "ExampleDefaultSubscription" computers: - "windowsdc.mydomain.com" - "*.trusteddomain.com" contentformat: "RenderedText" heartbeats: 900.000 connectionretry: 60.0 batchtimeoutlimit: 900.000 queries: | <QueryList> <Query Id="0"> <Select Path="Application">*</Select> <Select Path="Security">*</Select> <Select Path="System">*</Select> </Query> </QueryList>

(34)

日本語マニュアル発行日 2020 年 10 月 19 日 本書は 『syslog-ng PE Windows Event Collector Administration Guide July 2020』をベースに編集しています。 ジュピターテクノロジー株式会社 技術グループ

Figure 1: Windows イベントコレクターの syslog-ng PE 7.0 内の動作
Figure 2: &#34;NETWORK SERVIVE&#34;に read permission を追加
Figure 3: &#34;Network Service&#34;アカウントを Event Log Readers group に追加
Figure 4: SubscriptionManagers にサブスクリプションを追加

参照

関連したドキュメント

Windows Server 2012 Windows Server 2016 Red Hat Enterprise Linux 6 Red Hat Enterprise Linux 7 VMware vSphere 6 VMware vSphere 6.5 VMware vSphere 6.7 Oracle VM 3 UNIX サーバ.

Internet Explorer 11 Windows 8.1 Windows 10 Microsoft Edge Windows 10..

“Microsoft Outlook を起動できません。Outlook ウィンドウを開けません。このフォルダ ーのセットを開けません。Microsoft Exchange

項目 MAP-19-01vx.xx AL- ( Ⅱシリーズ初期データ編集ソフト) サポート OS ・ Microsoft Windows 7 32 ( ビット版). ・ Microsoft Windows Vista x86

MPIO サポートを選択すると、 Windows Unified Host Utilities によって、 Windows Server 2016 に含まれている MPIO 機能が有効になります。.

●お使いのパソコンに「Windows XP Service Pack 2」をインストールされているお客様へ‥‥. 「Windows XP Service

ESET Server Security for Windows Server、ESET Mail/File/Gateway Security for Linux は

Windows 10 Home 64 ビット版 Microsoft Office Professional 2019.. Office Microsoft Office Home &amp;