HTTP Event Collector(HEC)は、ログデータを SentinelOne Singularity Data Lake へ送る信頼性の高い方法です。Cloudflare Logpush は、Cloudflare ダッシュボードまたは API から、SentinelOne HEC へ直接ログをプッシュできます。
-
Cloudflare ダッシュボードで、アカウントまたはドメイン(ゾーンとも呼ばれます)の Logpush ページを開きます。
アカウントの場合: Logpush を開く ↗
ドメイン(ゾーン)の場合: Logpush を開く ↗
-
選んだ範囲に応じて、それぞれ アカウントスコープのデータセット と ゾーンスコープのデータセット を利用できます。
-
Create a Logpush job を選択します。
-
Select a destination で SentinelOne を選びます。
-
次の送信先情報を入力または選択します:
- SentinelOne HEC URL
- Auth Token - Event Collector のトークンです。
- Source Type - 例:
marketplace-cloudflare-latest
送信先の詳細を入力し終えたら、Continue を選びます。
-
ストレージサービスへプッシュするデータセットを選びます。
-
次のステップで、Logpush ジョブを設定します:
- Job name を入力します。
- If logs match では、ログに含めるイベントと除外するイベントを選べます。詳細は フィルター を参照してください。このオプションがないデータセットもあります。
- Send the following fields では、すべてのログを送信先へプッシュするか、プッシュするログを選ぶかを選べます。
-
Advanced Options では、次の設定ができます:
- ログ内のタイムスタンプフィールドの形式を選びます(
RFC3339(デフォルト)、Unix、UnixNano)。 - ログの サンプリングレート を選ぶか、ランダムにサンプリングした割合のログをプッシュします。
CVE-2021-44228のリダクションを有効にします。このオプションは、${の出現をすべてx{に置き換えます。
- ログ内のタイムスタンプフィールドの形式を選びます(
-
Logpush ジョブの設定が終わったら、Submit を選びます。
SentinelOne の Logpush ジョブを設定するには:
- 適切なエンドポイント URL と認証パラメーターでジョブを作成します。
- ジョブを有効にして、ログのプッシュを開始します。
Logpush ジョブの読み取りや設定の前に、Log Share の権限が有効になっていることを確認してください。詳細は Roles のセクション を参照してください。
ジョブを作成するには、次のフィールドを指定して Logpush jobs エンドポイントへ POST リクエストを送ります:
- name(任意)- ジョブ名にはドメイン名を使います。
- destination_conf - エンドポイント URL、ソースタイプ、認可ヘッダーを次の文字列形式で組み合わせたログ送信先です。
- <SENTINELONE_ENDPOINT_URL>: ポート付きの SentinelOne raw HTTP Event Collector URL です。例:
sentinelone://ingest.us1.sentinelone.net/services/collector/raw。Logpush ジョブの設定時、Cloudflare は SentinelOne エンドポイントが/services/collector/rawであることを想定します。 - <SENTINELONE_AUTH_TOKEN>: URL エンコードした SentinelOne 認可トークンです。例:
Bearer 0e6d94e8c-5792-4ad1-be3c-29bcaee0197d。 - <SOURCE_TYPE>: SentinelOne のソースタイプです。例:
marketplace-cloudflare-latest。
- <SENTINELONE_ENDPOINT_URL>: ポート付きの SentinelOne raw HTTP Event Collector URL です。例:
"https://<SENTINELONE_ENDPOINT_URL>?sourcetype=<SOURCE_TYPE>&header_Authorization=<SENTINELONE_AUTH_TOKEN>"-
dataset - 受け取りたいログのカテゴリです。対応データセットの一覧は データセット を参照してください。
-
output_options(任意)- フィールド、サンプルレート、タイムスタンプ形式の設定は Log Output Options を参照してください。タイムスタンプには
timestamps=rfc3339の使用を推奨します。
cURL を使ったリクエスト例:
Required API token permissions
At least one of the following token permissions is required:Logs Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/logpush/jobs" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "<DOMAIN_NAME>",
"destination_conf": "sentinelone://<SENTINELONE_ENDPOINT_URL>?sourcetype=<SOURCE_TYPE>&header_Authorization=<SENTINELONE_AUTH_TOKEN>",
"output_options": {
"field_names": [
"ClientIP",
"ClientRequestHost",
"ClientRequestMethod",
"ClientRequestURI",
"EdgeEndTimestamp",
"EdgeResponseBytes",
"EdgeResponseStatus",
"EdgeStartTimestamp",
"RayID"
],
"timestamp_format": "rfc3339"
},
"dataset": "http_requests",
"enabled": true
}'レスポンス:
{
"errors": [],
"messages": [],
"result": {
"id": <JOB_ID>,
"dataset": "http_requests",
"kind": "",
"enabled": true,
"name": "<DOMAIN_NAME>",
"output_options": {
"field_names": ["ClientIP", "ClientRequestHost", "ClientRequestMethod", "ClientRequestURI", "EdgeEndTimestamp","EdgeResponseBytes", "EdgeResponseStatus", "EdgeStartTimestamp", "RayID"],
"timestamp_format": "rfc3339"
},
"destination_conf": "sentinelone://<SENTINELONE_ENDPOINT_URL>?sourcetype=<SOURCE_TYPE>&header_Authorization=<SENTINELONE_AUTH_TOKEN>",
"last_complete": null,
"last_error": null,
"error_message": null
},
"success": true
}ジョブの更新(有効化と無効化を含む)は cURL で Logpush を管理する を参照してください。
トラブルシューティングは Logpush FAQ を参照してください。