Learn how to enhance the detection & response capabilities of your organization by integrating Zero Networks with Lumu’s data collection capabilities to pull, transform and inject the activity network logs recorded by Zero Networks into Lumu.
Ensure your script host can communicate with the following hosts, as they are required for the operation of this integration.
To set up the integration, you must prepare your Zero Networks instance to communicate with Lumu by generating an API token.
This token allows the integration to use the Zero Networks API to run the required queries to collect the activity records and process them as firewall metadata.
To create it, log in to your Zero Networks portal and follow these steps:
1. Click on Settings (1) located in the left navigation menu.
2. Scroll down in the Settings navigation bar. Look for the Integrations section and click on API (1).
3. Click on Add new token (1) to create a new token.
4. Fill in the token details following these guidelines:
5. Copy the token secret and keep it at hand, it will be required to set up the integration.
The integration set-up process needs you to collect this information from Lumu Portal:
Log in to your Lumu Portal and run the following procedures to collect this data.
To collect the Lumu Collector key, please refer to the Collector key document.
To collect the Lumu Custom Collector key, please refer to the Collector ID document.
To collect your Lumu company UUID, log in to your Lumu Portal. Once you are in the main window, copy the string below your company name.
There are 2 environment options to deploy the script. Select the one that best fits your current infrastructure.
Whichever alternative you select, you must unpack the integration package shared by our support team.
Unpack the deployment package provided by Lumu in your preferred path/folder. Keep in mind this location, as it will be required for further configurations. From now on, we will refer to this folder as <app_lumu_root>.
Before starting, ensure your integration environment can communicate with all the hosts listed in the Contacted Hosts section of this article.
You can deploy your integration using the following alternatives:
Follow the instructions based on the selected deployment method.
If Docker is your chosen deployment method, you may skip this step.
If Python is your chosen deployment method, you will need to create a virtual environment for each integration to avoid conflicts between them and your operating system tools. Make sure you follow the steps in our Preparing Environment for Custom Integrations article.
If you chose Python as your deployment method, you may skip this step.
If Docker is your chosen deployment method, you must follow the Docker installation documentation that corresponds to your OS. Ensure you follow the Post-installation steps for Linux before deploying the integration.
For Windows users, follow the Install Docker Desktop for Windows documentation to install the Docker Engine.
Add the integrations.yml configuration file in the <app_lumu_root> folder and edit it as instructed to set up the integration.
You will find the integrations_template.yml sample file inside the integrations package. Use it to build your configuration file.
The integrations.yml file contains the information required by the integration to collect the network activity data from Zero Networks, transform it, and send it to the Lumu Cloud.
All the parameters in red should be replaced with the real data necessary for your integration deployment. For example, the parameter “COMPANY-UUID” should end up as something similar to “aa11bb22bb33-123a-456b-789c-11aa22bb33cc”. Follow these indications for all similar parameters.
lumu:
uuid: "COMPANY-UUID"
collector_key: "COLLECTOR-KEY"
collector_id: "COLLECTOR-ID"
app:
name: "UNIQUE-NAME"
api:
token: "JWT-TOKEN"
Replace the highlighted placeholders as follows:
You must fill in the configuration data carefully. If there are any mistakes or missing data, you’ll receive errors during the deployment of the integration.
To streamline the deployment process, Lumu introduced the Makefile model integration that allows you to easily deploy integrations as a Docker container. To deploy the integration, locate yourself in the <app_lumu_root> folder, and run the following command:
Monitor the console output for any unexpected errors. If there are any errors present, fix them and run the command again. Check the Troubleshooting section for further reference.
In some Python installations, the executable name could vary from python to python3. If any Python command shows an error, change the python string in the presented command to python3.
We encourage you to create a Python environment to deploy the integration as a Python script. You will find specific instructions in the Create a Virtual Environment document. Install the required dependencies by running the following commands:
First run
Then, run
First run
Then, run
Replace the ENV_FOLDER placeholder with the name of your virtual environment.
To use the script, you must locate yourself in the <app_lumu_root> folder. Use the following command to show all options available for the package:
Usage: run.py [OPTIONS]
╭─ Options ─────────────────────────────────────────────────────────────────────────────────╮
│ --verbose -v Enable verbose mode. │
│ --logging-type -l [screen|file] Logging output type: 'screen' or 'file' [default: screen]│
│ --config TEXT Path to the configuration file. [default: integrations.yml] │
│ --help Show this message and exit. │
╰───────────────────────────────────────────────────────────────────────────────────────────╯
| Options | Description |
| -h, --help | Shows this message and exit |
| --config TEXT | Path to the configuration file. [default: integrations.yml] |
| --logging-type -l [screen|file] | Logging output type: 'screen' or 'file' [default: screen] |
| --verbose, -v | Enable verbose mode. |
Run the following command to poll all the Zero Networks logs and push them into Lumu’s custom data collector.
If you have a Docker environment, you can select this option to run the integration as a Docker process. To deploy and run your integration as a Docker container, locate yourself in the <package-path> folder, and follow these instructions:
1. To build the container, run the following command. Change all the flags based on the reference given in the script section above.
Do not forget the dot "." at the end of the line
2. To run the container, run the following command:
After you configure the integration, you will see the processed events in the custom collector created in Lumu Portal. Lumu will process events from 10 minutes previous to the integration activation time.
The commands defined in this section will allow you to troubleshoot the operation of your integration. Keep in mind that you must locate yourself in the <app_lumu_root> folder before running any of them.
The following are the troubleshooting commands for this deployment option:
Run the following command to check your integrations logs:
You will obtain the following results.
Run the following command to check errors in your integration.
Run the following command to check the status of the integration.
The command output will show the Docker container operational stats and running processes.
Run the following command if you need to stop the integration.
Run the following command to start the integration.
If you cannot run Docker commands with your current user, run the following command.
Run the following command to reinstall the integration from scratch:
Run the following command to collect and package the integration logs to share them with the Lumu support team. This command will create the support.tar package file that contains relevant information for the Lumu support team.
To identify failures in the script, please use the -v flag. This will allow you to identify failures in the script execution.
For troubleshooting purposes, you can run the following commands to: