Aruba ClearPass のログを収集する
このドキュメントでは、Bindplane を使用して Aruba ClearPass ログを収集する方法について説明します。パーサーは、不要なフィールドを削除し、メッセージ形式を標準化することで、受信ログのクリーンアップと構造化を試みます。次に、ログが CEF 形式に従っているか、別の構造に従っているかに応じて、コードは grok パターン、キーバリュー抽出、条件付きロジックを組み合わせて、関連するフィールドを統合データモデル(UDM)にマッピングし、最終的に各イベントを特定のセキュリティ イベントタイプに分類します。
始める前に
- Google Security Operations インスタンスがあることを確認します。
- Windows 2016 以降、または
systemd
を使用する Linux ホストを使用していることを確認します。 - プロキシの背後で実行している場合は、ファイアウォール ポートが開いていることを確認します。
- Aruba ClearPass への特権アクセス権があることを確認します。
Google SecOps の取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [コレクション エージェント] に移動します。
- Ingestion Authentication File をダウンロードします。Bindplane をインストールするシステムにファイルを安全に保存します。
Google SecOps のお客様 ID を取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [プロファイル] に移動します。
- [組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。
Bindplane エージェントをインストールする
Windows のインストール
- 管理者として コマンド プロンプトまたは PowerShell を開きます。
次のコマンドを実行します。
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux のインストール
- root 権限または sudo 権限でターミナルを開きます。
次のコマンドを実行します。
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
その他のインストール リソース
- その他のインストール オプションについては、こちらのインストール ガイドをご覧ください。
Syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する
構成ファイルにアクセスします。
config.yaml
ファイルを見つけます。通常、Linux では/etc/bindplane-agent/
ディレクトリに、Windows ではインストール ディレクトリにあります。- テキスト エディタ(
nano
、vi
、メモ帳など)を使用してファイルを開きます。
config.yaml
ファイルを次のように編集します。receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization ingestion_labels: log_type: CLEARPASS raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
自社のインフラストラクチャでの必要性に応じて、ポートと IP アドレスを置き換えます。
<customer_id>
は、実際の顧客 ID に置き換えます。/path/to/ingestion-authentication-file.json
の値を、Google SecOps の取り込み認証ファイルを取得するで認証ファイルを保存したパスに更新します。
Bindplane エージェントを再起動して変更を適用する
Linux で Bindplane エージェントを再起動するには、次のコマンドを実行します。
sudo systemctl restart bindplane-agent
Windows で Bindplane エージェントを再起動するには、Services コンソールを使用するか、次のコマンドを入力します。
net stop BindPlaneAgent && net start BindPlaneAgent
Aruba ClearPass syslog サーバーを構成する
- ClearPass Policy Manager コンソールにログインします。
- [Administration] > [External servers] > [Syslog targets] を選択します。
- [追加] をクリックします。
- 表示された [syslog ターゲットを追加] ウィンドウで、次の詳細を指定します。
- ホスト アドレス: Bindplane の IP アドレスを入力します。
- サーバーポート: Bindplane ポート番号を入力します。
- プロトコル: [UDP] を選択します(Bindplane の構成に応じて、[TCP] を選択することもできます)。
- [保存] をクリックします。
syslog エクスポート フィルタを構成する
- [Administration] > [External servers] > [Syslog export filters] に移動します。
- [追加] をクリックします。
- 表示された [Syslog フィルタを追加] ウィンドウの [全般] タブで、次のように指定します。
- 名前: エクスポート テンプレート アイテムのテーブルに基づいて、syslog エクスポート フィルタ名を入力します。
- エクスポート テンプレート: エクスポート テンプレート アイテムの表に基づいて、適切なエクスポート テンプレートを選択します。
- Export event format type: [Standard] を選択します。
- Syslog サーバー: Bindplane の IP アドレスを選択します。
- [テンプレートをエクスポート] リストで [セッション] または [分析情報] のエクスポート テンプレートを選択すると、[フィルタと列] タブが有効になります。次の手順を完了します。
- [フィルタと列] タブをクリックします。
- データフィルタ: デフォルト値の [すべてのリクエスト] が選択されていることを確認します。
- 列の選択: [エクスポート テンプレート アイテム] の表に基づいて、事前定義されたフィールド グループを選択します。
- 選択した列: 自動的に入力されたフィールドが、エクスポート テンプレートの項目の表と一致していることを確認します。
- [概要] タブをクリックします。
- [保存] をクリックします。
- [テンプレートをエクスポート] リストで [システム イベント] と [監査レコード] のエクスポート テンプレートを選択すると、[フィルタと列] タブは有効になりません。[概要] タブに進み、[保存] をクリックします。
- エクスポート テンプレート項目の概要の表の詳細に基づいて、すべての Session、Insight、Audit records、System events エクスポート テンプレートの syslog エクスポート フィルタを追加する手順を繰り返します。
テンプレート アイテムをエクスポートする
次の表に、各エクスポート テンプレートで構成する必要がある項目を示します。[選択した列] に表示されるデフォルトのフィールドは、イベントの解析でサポートされています。[選択した列(デフォルト)] の表に記載されているすべてのフィールドが、同じ順序で存在することを確認します。フィルタの大文字と小文字を区別する名前を含め、表に示されているとおりに syslog エクスポート フィルタ テンプレートを作成してください。
Syslog エクスポート フィルタ名(大文字と小文字を区別) | テンプレートをエクスポート | 事前定義済みフィールド グループ | 選択した列(デフォルト) |
---|---|---|---|
ACPPM_radauth | インサイトのログ | Radius 認証 | Auth.Username Auth.Host-MAC-Address Auth.Protocol Auth.NAS-IP-Address CppmNode.CPPM-Node Auth.Login-Status Auth.Service Auth.Source Auth.Roles Auth.Enforcement-Profiles |
ACPPM_radfailedauth | インサイトのログ | Radius 認証の失敗 | Auth.Username Auth.Host-MAC-Address Auth.NAS-IP-Address CppmNode.CPPM-Node Auth.Service CppmErrorCode.Error-Code-Details CppmAlert.Alerts |
ACPPM_radacct | インサイトのログ | RADIUS アカウンティング | Radius.Username Radius.Calling-Station-Id Radius.Framed-IP-Address Radius.NAS-IP-Address Radius.Start-Time Radius.End-Time Radius.Duration Radius.Input-bytes Radius.Output-bytes |
ACPPM_tacauth | インサイトのログ | tacacs 認証 | tacacs.Username tacacs.Remote-Address tacacs.Request-Type tacacs.NAS-IP-Address tacacs.Service tacacs.Auth-Source tacacs.Roles tacacs.Enforcement-Profiles tacacs.Privilege-Level |
ACPPM_tacfailedauth | インサイトのログ | tacacs Failed Authentication | tacacs.Username tacacs.Remote-Address tacacs.Request-Type tacacs.NAS-IP-Address tacacs.Service CppmErrorCode.Error-Code-Details CppmAlert.Alerts |
ACPPM_webauth | インサイトのログ | WEBAUTH | Auth.Username Auth.Host-MAC-Address Auth.Host-IP-Address Auth.Protocol Auth.System-Posture-Token CppmNode.CPPM-Node Auth.Login-Status Auth.Service Auth.Source Auth.Roles Auth.Enforcement-Profiles |
ACPPM_webfailedauth | インサイトのログ | WEBAUTH Failed Authentications | Auth.Username Auth.Host-MAC-Address Auth.Host-IP-Address Auth.Protocol Auth.System-Posture-Token CppmNode.CPPM-Node Auth.Login-Status Auth.Service CppmErrorCode.Error-Code-Details CppmAlert.Alerts |
ACPPM_appauth | インサイトのログ | アプリケーション認証 | Auth.Username Auth.Host-IP-Address Auth.Protocol CppmNode.CPPM-Node Auth.Login-Status Auth.Service Auth.Source Auth.Roles Auth.Enforcement-Profiles |
ACPPM_failedappauth | インサイトのログ | Failed Application Authentication(アプリケーション認証の失敗) | Auth.Username Auth.Host-IP-Address Auth.Protocol CppmNode.CPPM-Node Auth.Login-Status Auth.Service CppmErrorCode.Error-Code-Details CppmAlert.Alerts |
ACPPM_endpoints | インサイトのログ | エンドポイント | Endpoint.MAC-Address Endpoint.MAC-Vendor Endpoint.IP-Address Endpoint.Username Endpoint.Device-Category Endpoint.Device-Family Endpoint.Device-Name Endpoint.Conflict Endpoint.Status Endpoint.Added-At Endpoint.Updated-At |
ACPPM_cpguest | インサイトのログ | Clearpass Guest | Guest.Username Guest.MAC-Address Guest.Visitor-Name Guest.Visitor-Company Guest.Role-Name Guest.Enabled Guest.Created-At Guest.Starts-At Guest.Expires-At |
ACPPM_onbenroll | インサイトのログ | オンボード登録 | OnboardEnrollment.Username OnboardEnrollment.Device-Name OnboardEnrollment.MAC-Address OnboardEnrollment.Device-Product OnboardEnrollment.Device-Version OnboardEnrollment.Added-At OnboardEnrollment.Updated-At |
ACPPM_onbcert | インサイトのログ | オンボード証明書 | OnboardCert.Username OnboardCert.Mac-Address OnboardCert.Subject OnboardCert.Issuer OnboardCert.Valid-From OnboardCert.Valid-To OnboardCert.Revoked-At |
ACPPM_onboscp | インサイトのログ | OCSP のオンボーディング | OnboardOCSP.Remote-Address OnboardOCSP.Response-Status-Name OnboardOCSP.Timestamp |
ACPPM_cpsysevent | インサイトのログ | Clearpass System Events | CppmNode.CPPM-Node CppmSystemEvent.Source CppmSystemEvent.Level CppmSystemEvent.Category CppmSystemEvent.Action CppmSystemEvent.Timestamp |
ACPPM_cpconfaudit | インサイトのログ | Clearpass 構成監査 | CppmConfigAudit.Name CppmConfigAudit.Action CppmConfigAudit.Category CppmConfigAudit.Updated-By CppmConfigAudit.Updated-At |
ACPPM_possummary | インサイトのログ | ポスチャーの概要 | Endpoint.MAC-Address Endpoint.IP-Address Endpoint.Hostname Endpoint.Usermame Endpoint.System-Agent-Type Endpoint.System-Agent-Version Endpoint.System-Client-OS Endpoint.System-Posture-Token Endpoint.Posture-Healthy Endpoint.Posture-Unhealthy |
ACPPM_posfwsummary | インサイトのログ | ポスチャー ファイアウォールの概要 | Endpoint.MAC-Address Endpoint.IP-Address Endpoint.Hostname Endpoint.Usermame Endpoint.System-Agent-Type Endpoint.System-Agent-Version Endpoint.System-Client-OS Endpoint.System-Posture-Token Endpoint.Firewall-APT Endpoint.Firewall-Input Endpoint.Firewall-Output |
ACPPM_poavsummary | インサイトのログ | Posture Antivirus Summary | Endpoint.MAC-Address Endpoint.IP-Address Endpoint.Hostname Endpoint.Usermame Endpoint.System-Agent-Type Endpoint.System-Agent-Version Endpoint.System-Client-OS Endpoint.System-Posture-Token Endpoint.Antivirus-APT Endpoint.Antivirus-Input Endpoint.Antivirus-Output |
ACPPM_posassummary | インサイトのログ | Posture Antispyware Summary | Endpoint.MAC-Address Endpoint.IP-Address Endpoint.Hostname Endpoint.Usermame Endpoint.System-Agent-Type Endpoint.System-Agent-Version Endpoint.System-Client-OS Endpoint.System-Posture-Token Endpoint.Antispyware-APT Endpoint.Antispyware-Input Endpoint.Antispyware-Output |
ACPPM_posdskencrpsummary | インサイトのログ | Posture DiskEncryption の概要 | Endpoint.MAC-Address Endpoint.IP-Address Endpoint.Hostname Endpoint.Usermame Endpoint.System-Agent-Type Endpoint.System-Agent-Version Endpoint.System-Client-OS Endpoint.System-Posture-Token Endpoint.DiskEncryption-APT Endpoint.DiskEncryption-Input Endpoint.DiskEncryption-Output |
ACPPM_loggedusers | セッションログ | ログインしているユーザー | Common.Username Common.Service Common.Roles Common.Host-MAC-Address RADIUS.Acct-Framed-IP-Address Common.NAS-IP-Address Common.Request-Timestamp |
ACPPM_failedauth | セッションログ | 認証失敗 | Common.Username Common.Service Common.Roles RADIUS.Auth-Source RADIUS.Auth-Method Common.System-Posture-Token Common.Enforcement-Profiles Common.Host-MAC-Address Common.NAS-IP-Address Common.Error-Code Common.Alerts Common.Request-Timestamp |
ACPPM_radacctsession | セッションログ | RADIUS アカウンティング | RADIUS.Acct-Username RADIUS.Acct-NAS-IP-Address RADIUS.Acct-NAS-Port RADIUS.Acct-NAS-Port-Type RADIUS.Acct-Calling-Station-Id RADIUS.Acct-Framed-IP-Address RADIUS.Acct-Session-Id RADIUS.Acct-Session-Time RADIUS.Acct-Output-Pkts RADIUS.Acct-Input-Pkts RADIUS.Acct-Output-Octets RADIUS.Acct-Input.Octets RADIUS.Acct-Service-Name RADIUS.Acct-Timestamp |
ACPPM_tacadmin | セッションログ | tacacs+ 管理 | Common.Username Common.Service tacacs.Remote-Address tacacs.Privilege.Level Common.Request-Timestamp |
ACPPM_tacacct | セッションログ | tacacs+ アカウンティング | Common.Username Common.Service tacacs.Remote-Address tacacs.Acct-Flags tacacs.Privilege.Level Common.Request-Timestamp |
ACPPM_webauthsession | セッションログ | ウェブ認証 | Common.Username Common.Host-MAC-Address WEBAUTH.Host-IP-Address Common.Roles Common.System-Posture-Token Common.Enforcement-Profiles Common.Request-Timestamp |
ACPPM_guestacc | セッションログ | ゲストアクセス | Common.Username RADIUS.Auth-Method Common.Host-MAC-Address Common.Roles Common.System-Posture-Token Common.Enforcement-Profiles Common.Request-Timestamp |
ACPPM_auditrecords | 監査の記録 | 該当なし | 該当なし |
ACPPM_systemevents | システム イベント | 該当なし | 該当なし |
UDM マッピング テーブル
ログフィールド | UDM マッピング | ロジック |
---|---|---|
アクション | security_result.action | 値が「ALLOW」または「BLOCK」の場合、「Action」フィールドから値がマッピングされます |
Auth.Enforcement-Profiles | security_result.detection_fields.value | 値は「Auth.Enforcement-Profiles」フィールドからマッピングされます |
Auth.Host-MAC-Address | principal.mac | 値をコロン区切り MAC アドレス形式に変換した後、Auth.Host-MAC-Address フィールドからマッピングします。 |
Auth.Login-Status | security_result.detection_fields.value | 値は「Auth.Login-Status」フィールドからマッピングされます |
Auth.NAS-IP-Address | target.ip | 値は「Auth.NAS-IP-Address」フィールドからマッピングされます |
Auth.Protocol | intermediary.application | 値は「Auth.Protocol」フィールドからマッピングされます |
Auth.Service | security_result.detection_fields.value | 値は「Auth.Service」フィールドからマッピングされます |
Auth.Source | principal.hostname | 先頭の英数字とスペースを削除した後、「Auth.Source」フィールドから値がマッピングされます。 |
Auth.Username | principal.user.user_display_name | 値は「Auth.Username」フィールドからマッピングされます |
カテゴリ | metadata.event_type | 値が「Logged in」の場合、UDM フィールドは「USER_LOGIN」に設定されます。値が「Logged out」の場合、UDM フィールドは「USER_LOGOUT」に設定されます |
Common.Alerts | security_result.description | 値は「Common.Alerts」フィールドからマッピングされます |
Common.Enforcement-Profiles | security_result.detection_fields.value | 値は「Common.Enforcement-Profiles」フィールドからマッピングされます |
Common.Login-Status | security_result.detection_fields.value | 値は「Common.Login-Status」フィールドからマッピングされます |
Common.NAS-IP-Address | target.ip | 値は「Common.NAS-IP-Address」フィールドからマッピングされます |
Common.Roles | principal.user.group_identifiers | 値は「Common.Roles」フィールドからマッピングされます |
Common.Service | security_result.detection_fields.value | 値は「Common.Service」フィールドからマッピングされます |
Common.Username | principal.user.userid | 値は「Common.Username」フィールドからマッピングされます |
コンポーネント | intermediary.application | 値は「Component」フィールドからマッピングされます |
説明 | metadata.description | 値は、改行文字をパイプ記号に置き換えた後、「説明」フィールドからマッピングされます。[説明] フィールドに「User」、「Address」、「Role」が含まれている場合、Key-Value ペアとして解析され、対応する UDM フィールドにマッピングされます。「説明」フィールドに「Unable connection with」が含まれている場合、ターゲット ホスト名が抽出され、「target.hostname」にマッピングされます。 |
EntityName | principal.hostname | 値は「EntityName」フィールドからマッピングされます |
InterIP | target.ip | 値は「InterIP」フィールドからマッピングされます |
レベル | security_result.severity | 値が「ERROR」または「FATAL」の場合、UDM フィールドは「HIGH」に設定されます。値が「WARN」の場合、UDM フィールドは「MEDIUM」に設定されます。値が「INFO」または「DEBUG」の場合、UDM フィールドは「LOW」に設定されます。 |
LogNumber | metadata.product_log_id | 値は「LogNumber」フィールドからマッピングされます |
RADIUS.Acct-Framed-IP-Address | principal.ip | 値は「RADIUS.Acct-Framed-IP-Address」フィールドからマッピングされます |
タイムスタンプ | metadata.event_timestamp | 値を UTC に変換してタイムスタンプとして解析した後、Timestamp フィールドからマッピングします。 |
ユーザー | principal.user.userid | 値は「User」フィールドからマッピングされます |
agent_ip | principal.ip、principal.asset.ip | 値は「agent_ip」フィールドからマッピングされます |
コミュニティ | additional.fields.value.string_value | 値は「community」フィールドからマッピングされます |
descr | metadata.description | 値は「descr」フィールドからマッピングされます |
企業 | additional.fields.value.string_value | 値は「enterprise」フィールドからマッピングされます |
eventDescription | metadata.description | 引用符を削除した後、値が「eventDescription」フィールドからマッピングされます。 |
generic_num | additional.fields.value.string_value | 値は「generic_num」フィールドからマッピングされます |
prin_mac | principal.mac | 値をコロン区切りの MAC アドレス形式に変換してから、prin_mac フィールドからマッピングします。 |
prin_port | principal.port | 値は prin_port フィールドからマッピングされ、整数に変換されます |
specificTrap_name | additional.fields.value.string_value | 値は specificTrap_name フィールドからマッピングされます |
specificTrap_num | additional.fields.value.string_value | 値は「specificTrap_num」フィールドからマッピングされます |
稼働時間 | additional.fields.value.string_value | 値は「uptime」フィールドからマッピングされます |
version | metadata.product_version | 値は「version」フィールドからマッピングされます |
extensions.auth.type | 値は「SSO」に設定されます。 | |
metadata.event_type | 値は、さまざまなログフィールドとパーサー ロジックに基づいて決定されます。詳しくは、パーサーコードをご覧ください | |
metadata.log_type | 値は「CLEARPASS」に設定されます。 | |
metadata.product_name | 値は「ClearPass」に設定されます。 | |
metadata.vendor_name | 値は「ArubaNetworks」に設定されます。 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。