NetScaler ログを収集する
このドキュメントでは、Google Security Operations フォワーダーを使用して NetScaler ログを収集する方法について説明します。
詳細については、Google Security Operations へのデータの取り込みの概要をご覧ください。
取り込みラベルによって、未加工のログデータを構造化 UDM 形式に正規化するパーサーが識別されます。このドキュメントの情報は、取り込みラベル CITRIX_NETSCALER が付加されたパーサーに適用されます。
NetScaler VPX を構成する
Google Security Operations フォワーダーにログを送信するように NetScaler VPX を構成するには、次の操作を行います。
ホスト名の構成を確認する
- 管理者認証情報を使用して NetScaler ウェブ インターフェースにログインします。
 - [Configuration> Settings] を選択します。
 - [ホスト名、DNS IP アドレス、タイムゾーン] をクリックします。
 - [ホスト名] フィールドが空の場合は、ホスト名を入力します。スペースを入れないでください。このフィールドがすでに構成されている場合は、対応は不要です。
 - [DNS IP address] フィールドで、ローカル DNS IP アドレスが指定されているかどうかを確認します。
 - [タイムゾーン] フィールドにタイムゾーンを入力します。
 
監査サーバーを作成する
- NetScaler ウェブ インターフェースで、[Configuration] > [System] > [Auditing] > [Syslog] > [Servers] を選択します。
 - 次のフィールドに syslog の詳細を指定します。
- 名前
 - サーバーの種類
 - IP アドレス
 - ポート
 
 - [ログレベル] で [カスタム] を選択します。
 - 構成で DEBUG レベル以外のすべてのチェックボックスをオンにします。
 - [ログ機能] リストで、[LOCAL0] を選択します。
 - [Date format] リストで、[MMDDYYYY] を選択します。
 - [タイムゾーン] で [GMT] を選択します。
 - 次のチェックボックスをオフにします。
- TCP ロギング
 - ACL ロギング
 - ユーザーが構成可能なログメッセージ
 - AppFlow ロギング
 - 大規模な NAT ロギング
 - ALG メッセージのロギング
 - サブスクライバー ロギング
 - DNS
 - SSL インターセプト
 - URL のフィルタリング
 - コンテンツ検査のロギング
 
 - [OK] をクリックして、監査サーバーを作成します。
 
作成した監査ポリシーをサーバーにバインドする
- NetScaler ウェブ インターフェースで、[Configuration] > [System] > [Auditing] > [Syslog] を選択します。
 - [ポリシー] タブをクリックします。
 - [名前] フィールドに、ポリシーの名前を入力します。
 - [サーバー] リストで、前のセクションのポリシーを選択します。
 - [作成] をクリックします。
 - 作成した監査ポリシーを右クリックし、[アクション] > [グローバル バインディング] を選択します。
 - [ バインディングを追加] をクリックします。
 - [ポリシー バインディング] ウィンドウで、次の操作を行います。
- [ポリシーを選択] フィールドに、作成した監査ポリシーを入力します。
 - [バインディングの詳細] ペインの [優先度] フィールドに、デフォルトの優先度である「120」と入力します。
 - [Bind] をクリックします。
 
 
NetScaler SDX を構成する
Google Security Operations フォワーダーにログを送信するように NetScaler SDX を構成するには、次の操作を行います。
NetScaler SDX のホスト名構成を確認する
- 管理者認証情報を使用して NetScaler ウェブ インターフェースにログインします。
 - NetScaler ウェブ インターフェースで、[System] > [System settings] を選択します。
 - [ホスト名] フィールドが空の場合は、ホスト名を入力します。スペースを入れないでください。このフィールドがすでに構成されている場合は、対応は不要です。
 - [タイムゾーン] フィールドで、[UTC] または [GMT] を選択します。
 
syslog サーバーを構成する
- NetScaler ウェブ インターフェースで、[System] > [Notifications] > [Syslog servers] を選択します。
 - [詳細] ペインで、[追加] をクリックします。
 - [Create syslog server] ウィンドウで、次の syslog サーバー パラメータの値を指定します。
- [名前] フィールドに名前を入力します。
 - [IP アドレス] フィールドに、Google Security Operations フォワーダーの IP アドレスを入力します。
 - [ポート] フィールドにポート番号を入力します。
 - [ログレベル] で [カスタム] を選択します。
 - [デバッグ] 以外のすべてのログレベルを選択します。
 
 - [作成] をクリックします。
 
syslog パラメータを構成する
- NetScaler ウェブ インターフェースで、[System] > [Notifications] > [Syslog servers] を選択します。
 - [詳細] ペインで、[Syslog パラメータ] をクリックします。
 - [Syslog パラメータを構成する] ページで、[日付形式] を [MMDDYYYY] に選択し、[タイムゾーン] を [GMT] に選択します。
 - [OK] をクリックします。
 
NetScaler ログを取り込むように Google Security Operations フォワーダーを構成する
- [SIEM の設定] > [フォワーダー] を選択します。
 - [新しいフォワーダーの追加] をクリックします。
 - [Forwarder name] フィールドに、フォワーダーの一意の名前を入力します。
 - [Submit]、[Confirm] の順にクリックします。フォワーダーが追加され、[コレクタの構成を追加する] ウィンドウが表示されます。
 - [Collector name] フィールドに、コレクタの一意の名前を入力します。
 - [ログタイプ] として [Citrix NetScaler] を選択します。
 - [Collector type] フィールドで [Syslog] を選択します。
 - 次の必須入力パラメータを構成します。
- Protocol: コレクタが syslog データをリッスンするために使用する接続プロトコルを指定します。
 - アドレス: コレクタが存在し、Syslog データをリッスンするターゲット IP アドレスまたはホスト名を指定します。
 - ポート: コレクタが存在し、syslog データをリッスンするターゲット ポートを指定します。
 
 - [送信] をクリックします。
 
Google Security Operations フォワーダーの詳細については、Google Security Operations UI を使用してフォワーダー構成を管理するをご覧ください。
フォワーダーの作成時に問題が発生した場合は、Google Security Operations サポートにお問い合わせください。
フィールド マッピング リファレンス
このパーサーは、キーと値の形式の Citrix Netscaler SYSLOG ログを処理し、message フィールドから JSON 形式のデータを抽出し、host.hostname や user_agent.original などの他のフィールドの情報をサニタイズしてから UDM に追加します。プライマリ メッセージが空の場合、元のログメッセージにフォールバックして処理します。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | 論理 | 
|---|---|---|
| AAA トランザクション ID | security_result.detection_fields[].value | 
「AAA trans id」フィールドから抽出された値。 | 
| アクセス | security_result.action_details | 
「Access」が「Allowed」の場合、security_result.action を ALLOW に設定します。[アクセス] が [拒否] の場合、security_result.action を BLOCK に設定します。 | 
| applicationName | principal.application | 
「applicationName」フィールドから抽出された値。 | 
| Browser_type | network.http.user_agent | 
「Browser_type」フィールドから抽出された値。 | 
| ClientIP | principal.ip、principal.asset.ip | 
「ClientIP」フィールドから抽出された値。 | 
| ClientPort | principal.port | 
「ClientPort」フィールドから抽出された値。 | 
| client_cookie | additional.fields[].value.string_value | 
「client_cookie」フィールドから抽出された値。 | 
| コマンド | target.process.command_line | 
「Command」フィールドから抽出された値。 | 
| connectionId | security_result.detection_fields[].value | 
「connectionId」フィールドから抽出された値。 | 
| 宛先 | target.ip、target.asset.ip | 
「Destination」フィールドから抽出された値。 | 
| 宛先 | target.ip、target.asset.ip | 
「Destination」フィールドから抽出された値。 | 
| device_serial_number | target.asset_id | 
target.asset_id は「device_serial_number: | 
| 所要時間 | network.session_duration.seconds | 
期間は秒に変換されてマッピングされます。 | 
| 終了時間 | security_result.detection_fields[].value | 
「End Time」フィールドから抽出された値。 | 
| Failure_reason | metadata.description | 
「Failure_reason」フィールドから抽出された値。 | 
| flags | additional.fields[].value.string_value | 
「flags」フィールドから抽出された値。 | 
| グループ | target.group.group_display_name | 
「Group(s)」フィールドから抽出された値。 | 
| 理由 | metadata.description | 
「Reason」フィールドから抽出された値。 | 
| Remote_ip | target.ip、target.asset.ip | 
「Remote_ip」フィールドから抽出された値。 | 
| ServerIP | target.ip、target.asset.ip | 
「ServerIP」フィールドから抽出された値。 | 
| ServerPort | target.port | 
「ServerPort」フィールドから抽出された値。 | 
| session_guid | metadata.product_log_id | 
「session_guid」フィールドから抽出された値。 | 
| SessionId | network.session_id | 
「SessionId」フィールドから抽出された値。 | 
| ソース | principal.ip、principal.asset.ip | 
「Source」フィールドから抽出された値。 | 
| 開始時間 | security_result.detection_fields[].value | 
「Start Time」フィールドから抽出された値。 | 
| startTime | security_result.detection_fields[].value | 
「startTime」フィールドから抽出された値。 | 
| ステータス | security_result.description | 
「Status」フィールドから抽出された値。 | 
| Total_bytes_recv | network.received_bytes | 
「Total_bytes_recv」フィールドから抽出された値。 | 
| Total_bytes_send | network.sent_bytes | 
「Total_bytes_send」フィールドから抽出された値。 | 
| Total_bytes_wire_recv | security_result.detection_fields[].value | 
「Total_bytes_wire_recv」フィールドから抽出された値。 | 
| Total_bytes_wire_send | security_result.detection_fields[].value | 
「Total_bytes_wire_send」フィールドから抽出された値。 | 
| ユーザー | principal.user.userid | 
「User」フィールドから抽出された値。 | 
| VserverServiceIP | target.ip、target.asset.ip | 
「VserverServiceIP」フィールドから抽出された値。 | 
| VserverServicePort | target.port | 
「VserverServicePort」フィールドから抽出された値。「CITRIX」にハードコードされます。「NETSCALER」にハードコードされます。「CITRIX_NETSCALER」にハードコードされています。parser によって product_event_type に基づいて決定されます。例: NETWORK_CONNECTION、USER_LOGIN、USER_LOGOUT、USER_STATS、STATUS_UPDATE、USER_UNCATEGORIZED、GENERIC_EVENT。ログの接頭辞から抽出された値(例: CONN_DELINK、CONN_TERMINATE、OTHERCONN_DELINK など)。イベントの簡単な説明。場合によっては、「Reason」や「Failure_reason」などの他のフィールドから派生します。ログエントリの日付と時刻のフィールドから計算されます。パーサーはさまざまな形式とタイムゾーンを処理します。「username:domainname」フィールドから抽出され、コロンの後の部分が取得されます。metadata.product_event_type に「TCP」が含まれるイベントでは TCP にハードコードされています。ログインとコマンドが成功した場合は ALLOW、ログインが失敗した場合やリソース アクセスがブロックされた場合は BLOCK に設定されます。「Status」、「Failure_reason」、「Access」などのフィールドから派生します。ユーザー名とパスワードが認証に使用される場合は USERNAME_PASSWORD に設定します(特定のログメッセージから推測されます)。VPN 関連のログイン/ログアウト イベントの場合は VPN に設定します。ユーザー エージェント解析ライブラリを使用して network.http.user_agent フィールドから解析されます。 | 
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。