Below are the prerequisites for setting up the Vectra SaaS connector.
-
Users must have access to a Vectra account with client_id and client_secret for API authentication.
-
Users must configure a syslog destination server to receive data over UDP, TCP or TLS.
-
docker (version 24.0.5) Refer https://docs.docker.com/engine/install/#server for installation instructions. Verify the versions with the commands shown below:
$ docker version -
docker compose (version 2.20.2) Refer https://docs.docker.com/compose/install/linux/ for installation instructions. Verify the version with the commands shown below:
$ docker compose version
- 4 GB of Memory
- 20 GB of free storage
| Product | Product Versions |
|---|---|
| Vectra Respond UX (SaaS) API | v3.3 |
| OS | Windows, Linux (Ubuntu) |
Users need to follow following steps to start the connector:
-
Provide following details in docker-compose file:
- Vectra base URL
- Vectra client_id and client_secret
environment: BASE_URL: <vectra-base-url> CLIENT_ID: <vectra-client-id> CLIENT_SECRET: <vectra-client-secret>
-
Provide destination server details and cron schedules for each APIs in the config.json file.
{ "configuration": { "server": [ { "name": "<server-name>", "server_protocol": "<server-protocol>", "server_host": "<destination-server-ip-or-host>", "server_port": <destination-server-port> } ], "scheduler": { "audit": "<cron-expression-for-audit>", "detections": "<cron-expression-for-detections>", "entity_scoring": "<cron-expression-for-entity-scoring>" }, "retry_count": <retry-count> } }NOTE: Replace <> values with actual values.
Find the config.json field description here.
-
In case of TLS servers, provide a TLS configured server certificate(.pem) file in the cert folder.
- Certificate file name should be the same as the server name provided in config.json.
-
Place config.json, cert folder in the same directory where docker-compose file is present.
Working directory/ ├── docker-compose.yml ├── config.json └── cert/ └── server1.pem -
Run command 'docker compose up -d' to start the connector.
- User need to restart docker compose in case of any update in config.json. The steps are listed below.
- Run 'docker compose stop'
- Make required changes in config.json
- Run 'docker compose up -d' to start the connector.
- A Dockerfile is provided in the vectra-connector folder but it is not required to build the image locally. A pre-built image has been posted in Docker Hub and is pulled automatically by docker-compose.
| Field | Description | Possible Values |
|---|---|---|
| Server Details | ||
| name | Destination server name | alphabets, number, _ , -(Minimum 1 character) |
| server_protocol | Protocol supported by destination server | TCP, UDP, TLS, tcp, udp, tls |
| server_host | Destination server host or IP address | Valid IP or hostname |
| server_port | Destination server port which is able to receive data on configured protocol | Min: 1Max: 65535 |
| Scheduler Details | ||
| audit, detections, entity_scoring | API will fetch events on provided respective cron intervals | Valid cron expression |
| retry_count | Number of times the connector will retry before exiting in case the server is not reachable(If a negative value is given,the connector will continue retrying until server is reachable) | Positive or negative integer |