Syslogサーバ
- Last Updated: May 27, 2026
- 7 minute read
- Flowmon Products
- Flowmon
- Documentation
アプライアンスは、DHCP、VPN、ディレクトリサービスなどのさまざまなサービスからのsyslogメッセージを処理し、そのメッセージを使用してユーザログインに関する情報を収集できます。この情報は、ユーザIDのIPアドレスへの割り当てなどに使用できます。そのためには、syslogメッセージの解析ルールを追加します。解析ルールは、syslog-ng patterndbパーサーで使用されます。syslogメッセージを正規表現と同じような方法で記述し、ログのどの部分がIPアドレスおよびユーザ名に対応するかを指定できます。 FlowmonにおけるユーザIDの解析の詳細については、次の「FlowmonソリューションにおけるユーザID」セクションを参照してください。
TCP複数行syslogメッセージはサポートされていません。
新しいsyslogクライアントを追加するには、[新しいSyslogクライアント]をクリックします。
新しい解析ルールを追加する前に、ログメッセージからこの情報を取得できるかどうかを最初に確認する必要があります。[ルールの例]ボタンを使用すると、Windows Active Directory、Progress LoadMaster、Cisco ISEなどのルールの例を使用できます。[ルールのテスト]ボタンを使用すると新しいフォームが表示され、そのフォームにsyslogメッセージと対応する解析ルールを入力することができます。[テスト結果]に、すべての変数の内容が表示されます。ここで最も重要なのは、USERNAMEとASSIGNED_IPです。ユーザIDを機能させるには、この2つの変数に対応するデータが入力されている必要があります。オプションの変数DOMAINを使用してドメイン名を指定できます。このドメイン名はDOMAIN\USERNAMEの形式でUSERNAMEに追加されます。DOMAINを指定しない場合、USERNAMEは元の形式のままになります。解析ルールを自分で作成するには、syslog-ng patterndbの構文に従う必要があります。この構文はsyslog-ng文書内にあります。
ログアウトメッセージのルールでは、ASSIGNED_IPは必須ではありません。必要なのは、USERNAMEのみです。ASSIGNED_IPがない場合、ログインメッセージでこのUSERNAMEに割り当てられているIPアドレスが使用されます。USERNAMEが複数のコンカレントIPアドレスに割り当てられた場合、ログアウトメッセージには、ログアウトメッセージを適切に処理するためにASSIGNED_IPの情報も必要です。
解析ルールの構文
通常は、ESTRINGデータ型を使用すれば十分です。このデータ型は、指定したストリングまたは文字で終わるすべてのストリングと一致します。@ESTRING::ip address=@ は、ストリング「ip address=」で終わるすべてのテキストに一致します。
@ESTRING::ip address=@@ESTRING:ASSIGNED_IP:@ が一致するのは、たとえば、「DHCP ip address=192.168.1.1」というストリングであり、変数ASSIGNED_IPに値「192.168.1.1」が指定されます。
@ESTRING::ip address=@@ESTRING:ASSIGNED_IP: user=@@ESTRING:USERNAME:@ が一致するのは、たとえば、「DHCP ip address=192.168.1.1 user=flowmon」というストリングであり、変数USERNAMEに値「flowmon」が指定されます。
ログメッセージの解析ルールを作成する必要がある場合は、単語をホワイトスペースだけで分割します。たとえば、「DHCP 192.168.1.1 MSWinEventLog flowmon」のようにすると、以下の解析ルールを使用できます。
@ESTRING::DHCP @@ESTRING:ASSIGNED_IP:MSWinEventLog@@ESTRING:USERNAME:@、ここで
@ESTRING::DHCP @ は、「DHCP」という単語に続く最初のスペースまでストリングに一致します。@ESTRING:ASSIGNED_IP:MSWinEventLog@ は、単語「DHCP」に続く最初のスペースから単語「MSWinEventLog」までストリングに一致します。
@ESTRING:USERNAME:@ は、単語「MSWinEventLog」からストリングの末尾までストリングに一致します。
ツール[ルールのテスト]を使用してこの例を試す場合は、[テスト結果]セクションを見ると、変数USERNAMEとASSIGNED_IPの前後に追加のホワイトスペースがあることがわかります。このホワイトスペースは、後から内部的に削除されるため、解析ルールによって削除する必要はありません。
新しい解析ルールを挿入した後は、その解析ルールが正しいことを別のオプションで検証できます。[ユーザID情報解析のルール]テーブルの[一致した回数]列に、このルールに一致したログメッセージの数が表示されます。同じ列にあるファイルのイメージをクリックすることによって、特定のログメッセージを表示できます。
このログに固有のストリングの組み合わせが、すべての解析ルールに含まれる必要があります。たとえば、Windows Active Directoryからの情報を解析する場合、シンプルな形のログメッセージは次のようになると考えられます。
’<38>Jun 1 15:30:28 microsoft-windows-security-auditing[success] 4624 An account was successfully logged on.Account Name:FlowmonAccount Domain:INVEAName:Source Network Address:192.168.1.1Source Port:50625’.
ログアウトメッセージやエラーメッセージの場合、このメッセージの複数のバージョンが考えられます。したがって、このタイプのメッセージにのみ一致する解析ルールを指定する必要があります。サービスの種類を示すログの固定部分「microsoft-windows-security-auditing[success]」から開始できます。これが本当にログインメッセージであるかどうかを確認する必要があります。したがって、ストリング「An account was successfully logged on」と一致させます。最後に、IPアドレスとユーザ名に関する情報を抽出します。その結果、次のような解析ルールが生成されます。
@ESTRING::microsoft-windows-security-auditing\[success\]@@ESTRING::An account was successfully logged on.@@ESTRING::Account Name:@@ESTRING:USERNAME:Account Domain:@@ESTRING::Source Network Address:@@ESTRING:ASSIGNED\_IP:Source Port:@
複数行メッセージの改行文字(CR、LF)はパーサーで無視されます。これらの文字を解析ルールで使用しないでください。
解析ルールの詳細な記述方法については、syslog-ngの公式文書を参照してください。