Intro to Suricata

Suricata is a high performance, open source network analysis and threat detection software used by most private and public organizations, and embedded by major vendors to protect their assets.

Image from the website

Topology

I'll be using a Debian 11 container running on Proxmox for this.

Installation

Download the latest version of Suricata from this link.

Installation Script

Troubleshooting

Don't worry if you run into this error, you will fix it in Signatures

Setting Up

Config

Now that we have Suricata installed, let's give it an interface to listen on. Run ifconfig or ip a to find your IP and subnet, then edit your suricata.yaml file to include it.

Signatures

Suricata uses Signatures to trigger alerts so it’s necessary to install those and keep them updated. Signatures are also called rules, thus the name rule-files. With the tool suricata-update rules can be fetched, updated and managed to be provided for Suricata.

In this guide we just run the default mode which fetches the ET Open ruleset:

Afterwards the rules are installed at /var/lib/suricata/rules which is also the default at the config and uses the sole suricata.rules file.

Running Suricata

Optional - Web Interface

Click on the free option then sign up

Activate your account then follow this guide to install it

Rules & Rule Management

Rules Upkeep with PulledPork

The good thing with Suricata is it can utilise Snort rules, this lets us use the Snort tool - Pulled Pork to have access to a larger ruleset, as well as having the advantage of transitioning from Snort to Suricata easily. The script downloaded pulledpork in your /opt/pulledpork3 directory. We will use the default ruleset from ET OPEN Rule-set

Managing Rules with suricata-update

Last updated

Was this helpful?