# Introduction and requirements

## Introduction

This guide is intended to help customers or partners deploy Vectra Match in existing Vectra deployments. Match requires a functioning deployment of Vectra NDR (formerly Detect for Network). This means that your deployment will consist of a Brain appliance and at least one paired Sensor. The Brain appliance can be physical or virtual (including Brains deployed in supported IaaS clouds). Mixed mode deployment is also supported (the Brain serving as both Brain and Sensor).

Both Respond UX (RUX) and Quadrant UX (QUX) deployments are supported. If you are unsure of your deployment type, please see [Vectra Analyst User Experiences (Respond vs Quadrant)](https://docs.vectra.ai/deployment/getting-started/analyst-ux-options-rux-vs-qux).

Please see the table below for additional resources and guidance:

| **Article**                                                                                                                        | **Description**                                                                                              |
| ---------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| [Respond UX Deployment Guide](https://docs.vectra.ai/deployment/getting-started/respond-ux-deployment-guide)                       | Overview of the platform, requirements, deployment, initial configuration, recommended next steps.           |
| [Quadrant UX Deployment Guide](https://docs.vectra.ai/deployment/getting-started/quadrant-ux-deployment)                           | Overview of the platform, basic network connectivity requirements, initial settings, recommended next steps. |
| [Match FAQ](https://docs.vectra.ai/deployment/match/faq)                                                                           | Answers to frequently asked questions about Vectra Match.                                                    |
| [Match Troubleshooting](https://docs.vectra.ai/deployment/match/troubleshooting)                                                   | Troubleshooting guidance for Vectra Match.                                                                   |
| [Match Performance and Ruleset Optimization Guidance](https://docs.vectra.ai/deployment/match/performance-and-rulset-optimization) | Performance guidance and tips for optimizing rulesets to achieve the best performance with Vectra Match.     |
| [Match Suricata Configuration](https://docs.vectra.ai/deployment/match/suricata-configuration)                                     | Default suricata.yaml configuration file.                                                                    |
| [Managing Rulesets](https://docs.vectra.ai/deployment/match/managing-rulesets)                                                     | Applying modifications to uploaded rulesets.                                                                 |
| [Vectra Curated Ruleset](https://docs.vectra.ai/deployment/match/vectra-curated-ruleset)                                           | Details on the curated ruleset included with Vectra Match.                                                   |
| [Stream Deployment Guide](https://docs.vectra.ai/deployment/stream/deployment)                                                     | How to deploy Stream to use with QUX or RUX Match deployments.                                               |

## About Vectra Match

Vectra Match utilizes the open source [Suricata](https://suricata.io/) IDS engine. Vectra’s Sensors (network data sources) are extremely high performance and adept at producing the proprietary metadata required to supply the AI-based behavioral models utilized by Vectra NDR. Match enables these same Sensors to also run a Suricata engine that is fed by the same capture buffers that feed the existing data processing pipeline.

| **Deployment Type** | **Supported methods for output of Matches to downstream systems** |
| ------------------- | ----------------------------------------------------------------- |
| Respond UX          | Vectra Stream                                                     |
| Quadrant UX         | Vectra Stream, Syslog, Kafka                                      |

Both Respond UX (RUX) and Quadrant UX (QUX) deployments support configuration and ruleset management via GUI or API. Different APIs using different ruleset upload processes are used for RUX vs QUX deployments.

## Requirements

* Vectra NDR with paired Sensor(s) already deployed.
  * Only paired Sensors will be available to be enabled for Match.
  * Mixed mode deployment is also supported. Please see [Throughput (Performance)](#throughput-performance) for more details.
* Valid license for Match through either a PoV or purchase.
  * Without a valid license, Match cannot be enabled, rulesets cannot be uploaded, and existing rulesets cannot be assigned.
* A user with role that supports **Edit** permissions for the following:
  * **Configuration – Vectra Match Ruleset**
  * **Configuration – Vectra Match**
  * **Vectra Match Policy** - only required if you want to edit policy in uploaded rulesets.
    * Please see [Role Permission Details](#role-permission-details) below for additional detail.
  * For deployment using the API, see [API Deployment](https://docs.vectra.ai/deployment/match/deployment/api-deployment) for additional guidance.
    * QUX requires
      * At least one local user account for the Brain with an API token.
      * The user account tied to the API token must have the privileges specified above.
    * RUX requires
      * API client credentials tied to a Restricted Admin or Setting Admin role.
  * Downstream SIEM or other system setup to receive Match log data via syslog or Kafka transport.
    * Customers with existing Suricata deployments simply need to reconfigure their receivers to accept from the new source (your Vectra Brain) and configure the Brain for syslog or Kafka transport (QUX) or use Stream for output of Matches (QUX or RUX).

### Role Permission Details

Three permissions, each with **View** or **Edit** rights, support Vectra Match:

<table data-header-hidden><thead><tr><th width="305.5625"></th><th width="88.671875" align="center"></th><th width="352.31640625"></th></tr></thead><tbody><tr><td><strong>Permission</strong></td><td align="center"><strong>Rights</strong></td><td><strong>Allowed Capabilities</strong></td></tr><tr><td>Configuration – Vectra Match Ruleset</td><td align="center">View</td><td>Viewing ruleset assignments and information about ruleset files</td></tr><tr><td>Configuration – Vectra Match Ruleset</td><td align="center">Edit</td><td>Uploading, assigning, or deleting rulesets</td></tr><tr><td>Configuration – Vectra Match</td><td align="center">View</td><td>Viewing enablement state of a Sensor, stats, and status</td></tr><tr><td>Configuration – Vectra Match</td><td align="center">Edit</td><td>Enabling or disabling Match on a Sensor</td></tr><tr><td>Vectra Match Policy</td><td align="center">View</td><td>Viewing Match policy configuration</td></tr><tr><td>Vectra Match Policy</td><td align="center">Edit</td><td>Modifying Match policy configuration</td></tr></tbody></table>

The below permissions and rights are the defaults included in your deployment:

<table data-header-hidden><thead><tr><th width="344.2890625"></th><th width="78.6953125" align="center"></th><th width="306.0390625"></th></tr></thead><tbody><tr><td><strong>Predefined Roles</strong></td><td align="center"><strong>Rights</strong></td><td><strong>Permission</strong></td></tr><tr><td>admins, super_admins, restricted_admins, setting_admins, read_only</td><td align="center">View</td><td>Configuration – Vectra Match Ruleset Configuration – Vectra Match<br>Vectra Match Policy</td></tr><tr><td>admins, super_admins, restricted_admins, setting_admins</td><td align="center">Edit</td><td>Configuration – Vectra Match Ruleset</td></tr><tr><td>admins, super_admins, restricted_admins, setting_admins</td><td align="center">Edit</td><td>Configuration – Vectra Match</td></tr><tr><td>admins, super_admins, restricted_admins, setting_admins, security_analysts</td><td align="center">Edit</td><td>Vectra Match Policy</td></tr></tbody></table>

{% hint style="info" %}
**Please Note:**

* Only `restricted_admins` and `setting_admins` can be assigned to an API client for use in RUX deployments.
* Customers who have created their own roles (QUX only) will need to make sure that the user used for deployment will have the proper permissions to do the deployment.
  {% endhint %}

#### Changes from prior versions

Due to navigation updates for the Vectra UI, some permissions were renamed:

* **Manage – Vectra Match Ruleset** became **Configuration – Vectra Match Ruleset**
* **Settings – Vectra Match** became **Configuration – Vectra Match**

The following default permission changes were introduced:

* **Restricted Admins** now have **Edit** rights for **Configuration – Vectra Match**
  * This did not previously include Edit.
* **Vectra Match Policy** is a newly added permission, with **Edit** rights granted by default to:
  * `admins`
  * `super_admins`
  * `restricted_admins`
  * `setting_admins`
  * `security_analysts`
* No other default role mappings were changed.

## Throughput (Performance)

Please see the [Match Performance and Ruleset Optimization Guidance](https://docs.vectra.ai/deployment/match/performance-and-rulset-optimization) article for additional details.

Below is some general guidance regarding throughput of Vectra Match:

* Physical Sensors generally perform the most consistently and process around 60% of the traffic they were capable of processing before enabling Match.
* Virtual Sensors (both deployed in traditional hypervisor environments and in IaaS clouds) process around 50% of the traffic they were capable of processing before enabling Match.
* In some cases, larger configurations of vSensors or additional physical Sensors may be required to fully support the throughput required to run Vectra Match in addition to Vectra NDR.
  * Please work with your Vectra account team to ensure your deployment is sized appropriately.
* If you virtual Sensor does not have the resources to run Match in addition to its normal duties producing metadata for your Vectra platform, it can be resized to a larger configuration that supports more throughput. Alternatively, you can also redeploy the vSensor in a larger supported configuration. For details per supported platform, please see the guidance in the [Resizing Virtual Sensors and Brains](https://docs.vectra.ai/deployment/appliance-operations/resizing-virtual-appliances) KB article.

**Sensor throughput running Vectra NDR and throughput with Vectra Match also enabled:**

<table data-header-hidden><thead><tr><th width="368.08203125"></th><th width="84.3515625" align="center"></th><th width="123.41015625" align="center"></th><th width="173.02734375" align="center"></th></tr></thead><tbody><tr><td><strong>Appliance Model</strong></td><td align="center"><strong>Mode</strong></td><td align="center"><strong>Throughput</strong><br>Sensor Only</td><td align="center"><strong>Match Throughput</strong><br>Sensor and Match</td></tr><tr><td>S1</td><td align="center">Sensor</td><td align="center">1 Gbps</td><td align="center">400 Mbps</td></tr><tr><td>S2</td><td align="center">Sensor</td><td align="center">1 Gbps</td><td align="center">600 Mbps</td></tr><tr><td>S11</td><td align="center">Sensor</td><td align="center">2 Gbps</td><td align="center">1.2 Gbps</td></tr><tr><td>S101 (v1 and v2)</td><td align="center">Sensor</td><td align="center">50 Gbps</td><td align="center">33 Gbps</td></tr><tr><td>S127</td><td align="center">Sensor</td><td align="center">58 Gbps</td><td align="center">30 Gbps</td></tr><tr><td>X3</td><td align="center">Sensor</td><td align="center">9 Gbps</td><td align="center">3 Gbps</td></tr><tr><td>X3</td><td align="center">Mixed</td><td align="center">8 Gbps</td><td align="center">1 Gbps</td></tr><tr><td>X29 (v1 and v2)</td><td align="center">Sensor</td><td align="center">15 Gbps</td><td align="center">9 Gbps</td></tr><tr><td>X29 (v1 and v2)</td><td align="center">Mixed</td><td align="center">8 Gbps</td><td align="center">4.6 Gbps</td></tr><tr><td>X47</td><td align="center">Sensor</td><td align="center">20 Gbps</td><td align="center">13 Gbps</td></tr><tr><td>X47</td><td align="center">Mixed</td><td align="center">15 Gbps</td><td align="center">6 Gbps</td></tr><tr><td>X80</td><td align="center">Sensor</td><td align="center">20 Gbps</td><td align="center">11 Gbps</td></tr><tr><td>2 core vSensors (VMware, Hyper-V, KVM)</td><td align="center">Sensor</td><td align="center">500 Mbps</td><td align="center">250 Mbps</td></tr><tr><td>4 core vSensors (VMware, Hyper-V, KVM)</td><td align="center">Sensor</td><td align="center">1 Gbps</td><td align="center">500 Mbps</td></tr><tr><td>8 core vSensors (VMware, Hyper-V, KVM)</td><td align="center">Sensor</td><td align="center">2 Gbps</td><td align="center">1 Gbps</td></tr><tr><td>16 core vSensors (VMware, Hyper-V, KVM)</td><td align="center">Sensor</td><td align="center">5 Gbps</td><td align="center">2.5 Gbps</td></tr><tr><td>32 core vSensor (VMware)</td><td align="center">Sensor</td><td align="center">20 Gbps</td><td align="center">10 Gbps</td></tr><tr><td>2 core vSensors (AWS, Azure, GCP)</td><td align="center">Sensor</td><td align="center">1 Gbps</td><td align="center">500 Mbps</td></tr><tr><td>4 core vSensors (AWS, Azure, GCP)</td><td align="center">Sensor</td><td align="center">2 Gbps</td><td align="center">1 Gbps</td></tr><tr><td>8 core vSensors (AWS)</td><td align="center">Sensor</td><td align="center">4 Gbps</td><td align="center">2 Gbps</td></tr><tr><td>16 core vSensors (AWS)</td><td align="center">Sensor</td><td align="center">8 Gbps</td><td align="center">4 Gbps</td></tr><tr><td>16 core vSensor (GCP)</td><td align="center">Sensor</td><td align="center">5 Gbps</td><td align="center">2.5 Gbps</td></tr><tr><td>32 core vSensor (GCP)</td><td align="center">Sensor</td><td align="center">10 Gbps</td><td align="center">5 Gbps</td></tr></tbody></table>

## Connectivity Requirements

Vectra Match runs in the same environment on the same physical or virtual systems on which you deployed Vectra NDR. All communications between the Sensors and Brain use existing channels that are also used for Vectra NDR.

The only new additional firewall rules that might be required for Match is if you need to configure a new destination for the Matches to be forwarded to. See [Firewall requirements](https://docs.vectra.ai/deployment/getting-started/firewall-requirements) for full details on all potential rules that may be needed for your Vectra deployment.

For new destinations for Matches (see [Outputting Matches to Downstream Receivers](https://docs.vectra.ai/deployment/match/deployment/outputting-matches-to-downstream-receivers) for more detail):

* See the [Stream Deployment Guide](https://docs.vectra.ai/deployment/stream/deployment) for communications requirements when using Stream Match output.
* Syslog or Kafka requires open communication downstream using TCP or SSL and choice of port.

## Unsupported Suricata Features

Match does not support editing of suricata.yaml, thresholds.conf, or classification.config. Vectra does not support: file extraction (file-stor), Lua scripting, datasets, GeoIP functionality, logging metadata, rolling PCAP (pcap-log).
