QRadar と Cloudflare の連携は、次のいずれかの方法で設定できます。
Cloudflare のログを QRadar に送るには、API で HTTP エンドポイント向けの Logpush ジョブ を作成します。次に、Cloudflare Firewall イベントと Cloudflare HTTP イベントを QRadar に送る curl の例を 2 つ示します。
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": "<NAME>",
"output_options": {
"field_names": [
"Action",
"ClientIP",
"ClientASN",
"ClientASNDescription",
"ClientCountry",
"ClientIPClass",
"ClientRefererHost",
"ClientRefererPath",
"ClientRefererQuery",
"ClientRefererScheme",
"ClientRequestHost",
"ClientRequestMethod",
"ClientRequestPath",
"ClientRequestProtocol",
"ClientRequestQuery",
"ClientRequestScheme",
"ClientRequestUserAgent",
"EdgeColoCode",
"EdgeResponseStatus",
"Kind",
"MatchIndex",
"Metadata",
"OriginResponseStatus",
"OriginatorRayID",
"RayID",
"RuleID",
"Source",
"Datetime"
],
"timestamp_format": "rfc3339"
},
"destination_conf": "<QRADAR_URL>:<LOG_SOURCE_PORT>",
"max_upload_bytes": 5000000,
"max_upload_records": 1000,
"dataset": "firewall_events",
"enabled": true
}'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": "<NAME>",
"output_options": {
"field_names": [
"ClientRequestMethod",
"EdgeResponseStatus",
"ClientIP",
"ClientSrcPort",
"CacheCacheStatus",
"ClientCountry",
"ClientDeviceType",
"ClientIPClass",
"ClientMTLSAuthCertFingerprint",
"ClientMTLSAuthStatus",
"ClientRegionCode",
"ClientRequestBytes",
"ClientRequestHost",
"ClientRequestPath",
"ClientRequestProtocol",
"ClientRequestReferer",
"ClientRequestScheme",
"ClientRequestSource",
"ClientRequestURI",
"ClientRequestUserAgent",
"ClientSSLCipher",
"ClientSSLProtocol",
"ClientXRequestedWith",
"EdgeEndTimestamp",
"EdgeRequestHost",
"EdgeResponseBodyBytes",
"EdgeResponseBytes",
"EdgeServerIP",
"EdgeStartTimestamp",
"SecurityActions",
"SecurityRuleIDs",
"SecuritySources",
"OriginIP",
"OriginResponseStatus",
"OriginSSLProtocol",
"ParentRayID",
"RayID",
"SecurityAction",
"WAFAttackScore",
"SecurityRuleID",
"SecurityRuleDescription",
"WAFSQLiAttackScore",
"WAFXSSAttackScore",
"EdgeStartTimestamp"
],
"timestamp_format": "rfc3339"
},
"destination_conf": "<QRADAR_URL>:<LOG_SOURCE_PORT>",
"max_upload_bytes": 5000000,
"max_upload_records": 1000,
"dataset": "http_requests",
"enabled": true
}'Cloudflare は IP アドレスとポートの到達性を確認し、HTTP Receive ログソースの証明書を検証します。すべてのパラメーターが有効なら Logpush が作成され、HTTP Receiver ログソースへのイベント送信が始まります。
Amazon S3 REST API プロトコルを使うと、IBM QRadar は Amazon S3 バケットから Cloudflare Log のイベントを収集します。この方法を使う手順は次のとおりです。
- Cloudflare Logs を保存する Amazon S3 バケット ↗ を作成します。バケット名と、バケットへの書き込み権限がある AWS アクセスキー ID とシークレットアクセスキーを控えます。
- Amazon S3 向けの Logpush を有効にします。
- AWS Management Console で Amazon S3 サービスを開きます。Cloudflare がログを S3 バケットへ直接送れるように、バケットエンドポイントを作成します。
- Amazon AWS S3 REST API プロトコルで Cloudflare Logs を QRadar に連携する ↗ の手順に従います。
- Cloudflare でログを発生させ、S3 バケットに届き、続けて QRadar に転送されることを確認して、構成をテストします。