Cisco CTS ログを収集する
パーサーのバージョン: 6.0
このドキュメントでは、Bindplane エージェントを使用して Cisco CTS ログを Google Security Operations に取り込む方法について説明します。
Cisco TelePresence System(CTS)とは、CTS 500、CTS 1000、CTS 1100、CTS 1300、CTS 3000、CTS 3200、TX シリーズ システムなどの従来のビデオ会議ハードウェア エンドポイントを指します。これらの没入型テレプレゼンス ルーム システムは、高画質のビデオ会議機能を提供し、Cisco Unified Communications Manager(CUCM)を介して管理されます。システムは、システム オペレーション、通話アクティビティ、トラブルシューティングに関する syslog メッセージを生成します。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス
- Windows Server 2016 以降、または
systemdを使用する Linux ホスト - Bindplane エージェントと Cisco TelePresence System 間のネットワーク接続
- プロキシの背後で実行している場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認します。
- Cisco Unified Communications Manager(CUCM)への管理者権限
- Cisco TelePresence System Administration インターフェースへの管理者アクセス
- CTS コーデックから Bindplane エージェントへのネットワーク接続(UDP ポート 514 または構成されたポート)
Bindplane エージェントの Google SecOps 認証情報を取得する
Bindplane エージェントを Google SecOps に対して認証するには、次のいずれかの方法を選択します。
- 新規デプロイ: Chronicle API を使用します(オプション 1)。
- 以前のデプロイ: 2027 年 7 月 20 日に Ingestion API が廃止されるまで、取り込み認証ファイル(オプション 2)を引き続き使用します。
オプション 1: Chronicle API のサービス アカウントを作成する(推奨)
- Google Cloud コンソールにログインし、Google SecOps インスタンスにリンクされている Google Cloud プロジェクトを選択します。
- [IAM と管理] > [サービス アカウント] に移動します。
- [サービス アカウントを作成] をクリックします。
- 次の構成情報を指定します。
- サービス アカウント名: アカウントの名前を入力します(例:
bindplane-ingest)。 - サービス アカウントの説明: 説明を入力します(例:
Bindplane agent log ingestion)。
- サービス アカウント名: アカウントの名前を入力します(例:
- [作成して続行] をクリックします。
- [このサービス アカウントにプロジェクトへのアクセスを許可する] セクションで、[ロールを選択] をクリックし、[Chronicle 編集者] を選択します。
- [続行] をクリックして [完了] をクリックします。
- 作成したサービス アカウントをクリックし、[キー] タブに移動します。
- [鍵を追加] > [新しい鍵を作成] の順にクリックします。
- [JSON] を選択し、[作成] をクリックします。キーファイルがパソコンにダウンロードされます。
- 鍵ファイルを
ingestion-auth.jsonとして Bindplane コレクタ ディレクトリ(Linux の場合は/opt/observiq-otel-collector/ingestion-auth.json、Windows の場合はC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json)に保存するか、config.yamlのcreds_file_pathを更新して、保存先のパスと一致させます。 - [IAM と管理] > [設定] に移動し、[プロジェクト番号] をコピーします。これはエクスポータの構成に必要です。
オプション 2: 取り込み認証ファイルをダウンロードする(以前のバージョン)
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [収集エージェント] に移動します。
- 取り込み認証ファイルをダウンロードします。
- Bindplane エージェントがインストールされるシステムにファイルを安全に保存します。
Google SecOps のお客様 ID を取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [プロファイル] に移動します。
[組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。
Bindplane エージェントをインストールする
次の手順に沿って、Windows または Linux オペレーティング システムに Bindplane エージェントをインストールします。
Windows のインストール
- 管理者として コマンド プロンプトまたは PowerShell を開きます。
次のコマンドを実行します。
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietインストールが完了するまで待ちます。
次のコマンドを実行して、インストールの内容を確認します。
sc query observiq-otel-collectorサービスは RUNNING と表示されます。
Linux のインストール
- root 権限または sudo 権限でターミナルを開きます。
次のコマンドを実行します。
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.shインストールが完了するまで待ちます。
次のコマンドを実行して、インストールの内容を確認します。
sudo systemctl status observiq-otel-collectorサービスが active (running) と表示されます。
その他のインストール リソース
その他のインストール オプションとトラブルシューティングについては、Bindplane エージェントのインストール ガイドをご覧ください。
Syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する
構成ファイルを探します。
Linux:
sudo nano /opt/observiq-otel-collector/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
構成ファイルを編集します。
config.yamlの内容全体を次の構成に置き換えます。receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/cisco_cts: protocol: https # Region of your instance, for example us, europe, asia-southeast1 location: <LOCATION> # Project number of the Google Cloud project linked to the instance project: '<PROJECT_NUMBER>' compression: gzip creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json' customer_id: 'YOUR_CUSTOMER_ID' endpoint: chronicle.googleapis.com log_type: CISCO_CTS raw_log_field: body service: pipelines: logs/cts_to_chronicle: receivers: - udplog exporters: - chronicle/cisco_cts各プレースホルダを次のように置き換えます。
レシーバーの構成:
- レシーバーは、UDP syslog(CTS デバイスの標準)に
udplogを使用します。 listen_addressが0.0.0.0:514に設定され、UDP ポート 514 のすべてのインターフェースでリッスンする- 非 root として実行されている Linux システムの場合、ポートを
1514以上に変更します
- レシーバーは、UDP syslog(CTS デバイスの標準)に
エクスポータの構成:
creds_file_path: サービス アカウントの JSON キーファイルのフルパス(オプション 1):- Linux:
/opt/observiq-otel-collector/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
customer_id:YOUR_CUSTOMER_IDをcustomer IDに置き換えます。詳細については、Google SecOps のお客様 ID を取得するをご覧ください。location:<LOCATION>を Google SecOps インスタンスのリージョン(us、europe、asia-southeast1など)に置き換えます。エクスポートでは、この値がchronicle.googleapis.comの前に付加されます。完全なリストについては、リージョン エンドポイントをご覧ください。project:<PROJECT_NUMBER>を [IAM と管理] > [設定] のプロジェクト番号に置き換えます。endpoint:chronicle.googleapis.comに設定したままにします。log_type:CISCO_CTSに設定します(完全一致が必要です)
以前の Ingestion API エクスポータ
オプション 2 の取り込み認証ファイルを使用する場合は、
exportersブロックを次のように置き換えます。creds_file_pathを取り込み認証ファイルのパスに設定します。インスタンスが米国以外にある場合は、malachiteingestion-pa.googleapis.comをリージョン エンドポイント(例:europe-malachiteingestion-pa.googleapis.com)に置き換えます。exporters: chronicle/cisco_cts: compression: gzip creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json' customer_id: 'YOUR_CUSTOMER_ID' endpoint: malachiteingestion-pa.googleapis.com log_type: CISCO_CTS raw_log_field: body
構成ファイルを保存する
編集が完了したら、ファイルを保存します。
- Linux:
Ctrl+O、Enter、Ctrl+Xの順に押します。 - Windows の場合: [ファイル] > [保存] をクリックします。
Bindplane エージェントを再起動して変更を適用する
Linux で Bindplane エージェントを再起動するには:
次のコマンドを実行します。
sudo systemctl restart observiq-otel-collectorサービスが実行されていることを確認します。
sudo systemctl status observiq-otel-collectorログでエラーを確認します。
sudo journalctl -u observiq-otel-collector -f
Windows で Bindplane エージェントを再起動するには:
次のいずれかのオプションを選択します。
管理者としてコマンド プロンプトまたは PowerShell を開きます。
net stop observiq-otel-collector && net start observiq-otel-collectorサービス コンソール:
Win+Rキーを押し、「services.msc」と入力して Enter キーを押します。- observIQ OpenTelemetry Collector を見つけます。
- 右クリックして [再起動] を選択します。
サービスが実行されていることを確認します。
sc query observiq-otel-collectorログでエラーを確認します。
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Cisco CTS syslog 転送を構成する
Cisco TelePresence System(CTS)の syslog 転送は、Cisco Unified Communications Manager(CUCM)を介して構成されます。外部 Syslog アドレスは、各 CTS デバイスの製品固有の構成レイアウトで構成する必要があります。
CUCM で外部 syslog アドレスを構成する
- ウェブブラウザを使用して Cisco Unified Communications Manager Administration インターフェースにログインします。
- [デバイス] > [スマートフォン] に移動します。
- 検索機能を使用して、Cisco TelePresence System デバイスを見つけます。
- デバイス名をクリックして、[Phone Configuration] ウィンドウを開きます。
- [Product Specific Configuration Layout] セクションまでスクロールします。
- [External SYSLOG Address] フィールドを探します。
[External SYSLOG Address] フィールドに、次のいずれかの形式で syslog サーバーのアドレスを入力します。
- IP アドレスのみ:
192.168.1.100(デフォルトのポート 514 を使用) - ポートを含む IP アドレス:
192.168.1.100:514 - ホスト名のみ:
bindplane-server.example.com(デフォルト ポート 514 を使用) - ポートを含むホスト名:
bindplane-server.example.com:1514
- IP アドレスのみ:
ページの下部にある [保存] をクリックして、構成を保存します。
[Apply Config] をクリックして、変更をデバイスに適用します。
[Reset] または [Restart] をクリックして CTS デバイスを再起動し、syslog 転送を有効にします。
CTS デバイスで syslog の設定を確認する
- ウェブブラウザを開き、
https://<CTS-IP-ADDRESS>の CTS 管理インターフェースに移動します。 - CUCM で構成された SSH 管理者のユーザー名とパスワードを使用してログインします。
- [構成] > [ネットワーク設定] に移動します。
[Syslog Address] フィールドに、Bindplane エージェントの IP アドレスまたはホスト名が表示されていることを確認します。
複数の CTS デバイスに syslog を設定する
CTS デバイスが複数ある場合は、デバイスごとに設定手順を繰り返します。
- CUCM で、[Device] > [Phone] に移動します。
- 各 CTS デバイスを検索して選択します。
- [Product Specific Configuration Layout] セクションで、[External SYSLOG Address] フィールドを構成します。
- 各デバイスの設定を保存して適用します。
- 各デバイスを再起動して、syslog 転送を有効にします。
syslog メッセージが受信されていることを確認する
Bindplane エージェントのログを調べて、syslog メッセージが受信されていることを確認します。
Linux:
sudo journalctl -u observiq-otel-collector -f | grep -i ciscoWindows:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log" | findstr /i cisco
Google SecOps コンソールにログインします。
[検索] に移動し、最近の CTS ログの検索クエリを実行します。
metadata.log_type = "CISCO_CTS"最近のタイムスタンプが付いたログが検索結果に表示されていることを確認します。
Syslog メッセージの形式
Cisco TelePresence System は、RFC 3164(BSD syslog)形式で syslog メッセージを送信します。メッセージには以下が含まれます。
- 通話アクティビティ、動画/音声イベント、システム オペレーションに関するシステム オペレーション(sysop)ログ メッセージ
- ファシリティ コード: メッセージ タイプによって異なります。
- デフォルトのポート: UDP 514
- メッセージ ストレージ: CTS デバイスに最大 20 個のローテーション ログファイル
syslog 転送のトラブルシューティング
syslog メッセージが受信されない場合:
CTS コーデックから Bindplane エージェントへのネットワーク接続を確認します。
ping <BINDPLANE_AGENT_IP>ファイアウォール ルールで、CTS IP アドレスから Bindplane エージェントへのポート 514(または構成されたポート)の UDP トラフィックが許可されていることを確認します。
CUCM の製品固有の構成レイアウトで、外部 SYSLOG アドレスが正しく構成されていることを確認します。
syslog 構成を適用した後、CTS デバイスが再起動されたことを確認します。
[Troubleshooting] > [Log Files] で CTS 管理インターフェースのログファイルを確認し、syslog 関連のエラーがないか確認します。
Bindplane エージェントが正しいポートでリッスンしていることを確認します。
Linux:
sudo netstat -ulnp | grep 514Windows:
netstat -an | findstr :514
UDM マッピング テーブル
| ログフィールド | UDM マッピング | ロジック |
|---|---|---|
| AuditDetails, data2 | security_result.description | AuditDetails の値(空でない場合)、それ以外の場合は data2 |
| ClientAddress、LoginFrom | principal.ip | ClientAddress の値(空でなく、IP アドレスでない場合)。それ以外の場合は LoginFrom |
| EventType | metadata.product_event_type | 値を直接コピーする |
| logType | metadata.description | 値を直接コピーする |
| 重要度 | security_result.severity | 重大度が [6,7] の場合は INFORMATIONAL、5 の場合は LOW、4 の場合は MEDIUM、3 の場合は ERROR、2 の場合は HIGH、それ以外の場合は CRITICAL に設定します。 |
| logType、EventStatus | security_result.action | logType == AuthenticationSucceeded または EventStatus == Success の場合は ALLOW に設定 |
| EventType、logType | metadata.event_type | EventType == UserAccess の場合は USER_RESOURCE_ACCESS に設定。EventType == UserLogging または logType が LOGIN と一致する場合は USER_LOGIN。EventType が [UserRoleMembershipUpdate, GeneralConfigurationUpdate] の場合は USER_RESOURCE_UPDATE_CONTENT。それ以外の場合は GENERIC_EVENT。 |
| AppID | principal.application | 値を直接コピーする |
| NodeID | target.hostname | 値を直接コピーする |
| process_id | principal.process.pid | 値を直接コピーする |
| ResourceAccessed | target.resource.name | 値が直接コピーされる |
| UserID | principal.user.userid | 値を直接コピーする |
| metadata.product_name | 「CISCO_CTS」に設定 | |
| metadata.vendor_name | 「CISCO」に設定 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。