Configuring Cloudflare Connectors

This connector allows you to use the Cloudlfare Logpull API to ingest retained log files to the Stellar Cyber data lake.

Cloudflare connectors use the Logpull API. Logpull is only available to Cloudflare customers on the Enterprise plan. Make sure that you have the following:

  • a Cloudflare account on an Enterprise plan

  • an Enterprise subscription for the zone

For the available permissions for tokens and roles as they relate to logs, refer to Get started > Permissions.

This connector is improved to use less memory. Under certain scenarios if there is an error reaching the third-party API, some duplicate messages may be sent.

Connector Overview: Cloudflare

Capabilities

  • Collect: Yes

  • Respond: No

  • Native Alerts Mapped: No

  • Runs on: DP

  • Interval: Configurable

Collected Data

Content Type

Index

Locating Records

Logs (not configurable in the User Interface)

Syslog

msg_class:

cloudflare_logpull_logs

msg_origin.source:

cloudflare_logpull

msg_origin.vendor:

cloudflare

msg_origin.category:

websec

Domain

https://api.cloudflare.com

Response Actions

N/A

Third Party Native Alert Integration Details

N/A

Required Credentials

  • Zone ID and API Token

               Let us know if you find the above overview useful.

Adding a Cloudflare Connector

To add a Cloudflare connector:

  1. Obtain the required credentials
  2. Add the connector in Stellar Cyber
  3. Test the connector
  4. Verify ingestion

Obtaining the Required Credentials

To configure this connector in Stellar Cyber, you will need the following information from your Cloudflare deployment:

  • Zone ID: Specify the Zone ID, Cloudflare's unique identifier for each domain in your account. You will be using this ID to configure the connector.

  • API Token: You will need to create an API token for use by the Stellar Cyber connector.

  • Field list: Review whether you want to collect the Default fields according to how the defaults are set in your Cloudflare deployment, or whether you want All fields that are applicable to the dataset you have associated with that Zone. (Refer to the Cloudflare documentation for a description of the log fields available per dataset.)

Note that the applicable logs are not retained by default. To support the retrieval of logs with the Logpull API, you must enable log retention. If enabling log retention does not work according to Cloudflare's documentation, you may need to modify the API call using the curl command below.

  1. Log into the Cloudflare dashboard using a user with the Administrator Read only role.

  2. Select the account and the domain for which you want to collect data. This step ensures you save the correct Zone ID.

  3. From the Overview page, locate the section titled API and the field for Zone ID, then click the link Click to copy. For example: 

  4. Paste that value in a file to use when you configure the connector below.

  5. Click the link for Get your API Token.

  6. Follow Cloudflare's guidance to Create an API token. You can create an API from a template or you can create a custom token.

    Specify the following permissions: Zone, desired dataset, Edit. (See note below about Edit versus Read permissions).

    For example, below is a custom token, with the permissions for Zone, Logs, and Edit specified:

    The Edit permission is needed for the API token so that this connector can turn on log retention. If you can turn on log retention, only Read permission is needed for the API token.

    Use the following command to turn on log retention:

    curl -i -H "Authorization: Bearer <API TOKEN>" POST "https://api.cloudflare.com/client/v4/zones/<ZONE_ID>/logs/control/retention/flag" -d '{"flag":true}'

    where <API TOKEN> and <ZONE ID> are your API token and Zone ID.

  7. Save the API token in the same file in which you saved the Zone ID, then proceed to the next section.

Adding the Connector in Stellar Cyber

With the Zone ID and API token handy, you can add the Cloudflare connector in Stellar Cyber:

  1. Log in to Stellar Cyber.

  2. Click System | Integration | Connectors. The Connector Overview appears.

  3. Click Create. The General tab of the Add Connector screen appears. The information on this tab cannot be changed after you add the connector.

  4. Choose Web Security from the Category drop-down.

  5. Choose Cloudflare from the Type drop-down.

  6. For this connector, the supported Function is Collect, which is enabled already.

  7. Enter a Name.

    This field does not accept multibyte characters.

  8. Choose a Tenant Name. The Interflow records created by this connector include this tenant name.

  9. Choose the device on which to run the connector.

    • Certain connectors can be run on either a Sensor or a Data Processor. The available devices are displayed in the Run On menu. If you want to associate your collector with a sensor, you must have configured that sensor prior to configuring the connector or you will not be able to select it during initial configuration. If you select Data Processor, you will need to associate the connector with a Data Analyzer profile as a separate step. That step is not required for a sensor, which is configured with only one possible profile.

    • If the device you're connecting to is on premises, we recommend you run on the local sensor. If you're connecting to a cloud service, we recommend you run on the DP.

  10. (Optional) When the Function is Collect, you can create Log Filters. For information, see Managing Log Filters.

  11. Click Next. The Configuration tab appears.

  12. Enter the Zone ID you copied earlier.

  13. Enter the API Token you copied earlier.

  14. Choose the Interval (min). This is how often the logs are collected.

  15. Select the Log Fields you want to collect:

    • All Fields: all fields applicable to the dataset associated with the Zone

    • Default Fields: default fields set in your Cloudflare deployment

  16. Click Next. The final confirmation tab appears.

  17. Click Submit.

    To pull data, a connector must be added to a Data Analyzer profile if it is running on the Data Processor.

  18. If you are adding rather than editing a connector with the Collect function enabled and you specified for it to run on a Data Processor, a dialog box now prompts you to add the connector to the default Data Analyzer profile. Click Cancel to leave it out of the default profile or click OK to add it to the default profile.

    • This prompt only occurs during the initial create connector process when Collect is enabled.

    • Certain connectors can be run on either a Sensor or a Data Processor, and some are best run on one versus the other. In any case, when the connector is run on a Data Processor, that connector must be included in a Data Analyzer profile. If you leave it out of the default profile, you must add it to another profile. You need the Administrator Root scope to add the connector to the Data Analyzer profile. If you do not have privileges to configure Data Analyzer profiles, a dialog displays recommending you ask your administrator to add it for you.

    • The first time you add a Collect connector to a profile, it pulls data immediately and then not again until the scheduled interval has elapsed. If the connector configuration dialog did not offer an option to set a specific interval, it is run every five minutes. Exceptions to this default interval are the Proofpoint on Demand (pulls data every 1 hour) and Azure Event Hub (continuously pulls data) connectors. The intervals for each connector are listed in the Connector Types & Functions topic.

    The Connector Overview appears.

The new connector is immediately active.

Testing the Connector

When you add (or edit) a connector, we recommend that you run a test to validate the connectivity parameters you entered. (The test validates only the authentication / connectivity; it does not validate data flow).

  1. Click System | Integrations | Connectors. The Connector Overview appears.

  2. Locate the connector that you added, or modified, or that you want to test.

  3. Click Test at the right side of that row. The test runs immediately.

    Note that you may run only one test at a time.

Stellar Cyber conducts a basic connectivity test for the connector and reports a success or failure result. A successful test indicates that you entered all of the connector information correctly.

To aid troubleshooting your connector, the dialog remains open until you explicitly close it by using the X button. If the test fails, you can select the  button from the same row to review and correct issues.

The connector status is updated every five (5) minutes. A successful test clears the connector status, but if issues persist, the status reverts to failed after a minute.

Repeat the test as needed.

ClosedDisplay sample messages...

Success !

Failure with summary of issue:

Show More example detail:

 

Verifying Ingestion

To verify ingestion:

  1. Click Investigate | Threat Hunting. The Interflow Search tab appears.
  2. Change the Indices to Syslog. The table immediately updates to show ingested Interflow records.