OpenBSD Handbook

    Theme
    • Part I. Install & Configure
      • Introduction to OpenBSD
      • Installing OpenBSD
      • The X Window System
      • Networking on OpenBSD
      • System Configuration
      • OpenBSD Basics
      • Managing Software: Packages and Ports
    • Part II. Daily Operations
      • OpenBSD Desktop Environments
      • Multimedia
      • Printing
      • Linux Compatibility
      • Windows Compatibility
      • Games
    • Part III. System Administration
      • Virtualization
      • Storage and File Systems
      • Updating and Upgrading
      • Localization
      • The OpenBSD Boot Process
      • Security
    • Part IV. Networking & Daemons
      • Services
        • Database
          • MariaDB
          • PostgreSQL
          • Redis
          • memcached
        • Directory
          • YP (NIS)
          • LDAP
        • File
          • NFS
          • Samba
        • FTP Services
          • ftpd
          • ProFTPD
          • vsftpd
          • Pure-FTPd
          • TFTP
        • Mail
          • OpenSMTPD Mail Server
          • Dovecot IMAP and POP3 Server
          • Postfix
          • Exim
          • Rspamd
        • Name
          • Unbound DNS Resolver
          • NSD Authoritative DNS Server
          • BIND DNS Server
        • Networking
          • OpenBGPD
          • rad
          • DHCP on OpenBSD
          • slaacd
        • Web
          • Apache HTTP Server
          • nginx Web Server
          • OpenBSD httpd Web Server
          • relayd Reverse Proxy
        • Logging
          • syslogd
        • Monitoring
          • SNMP
        • Remote Access
          • Audit OpenSSH
          • OpenSSH Server
        • File Synchronization
          • rsync
        • Messaging
          • RabbitMQ Message Broker
        • Time
          • NTP Time Synchronization
      • PF
        • pfctl cheat sheet
        • PF Anchors
        • PF Filter Rules
        • PF Forwarding
        • PF Lists and Macros
        • PF Load Balancing
        • PF Logging
        • PF NAT
        • PF Options
        • PF Policies
        • PF Shortcuts
        • PF Tables
      • Advanced Networking
        • High Availability and State Replication
        • Multi-WAN and Policy-Based Routing
        • VPN and Cryptographic Tunneling
        • Classic and Lightweight Tunnels
        • IPv6 at Scale
        • QoS and Traffic Shaping
        • MPLS and Label Distribution
        • Network Services at Scale
        • Virtualization and Host Networking
        • Large-Scale L2 and L3 Design
        • Telemetry, Logging, and Flow Export
        • Hardening and Operational Safety
        • Reference Architectures
        • Troubleshooting Playbooks
      • Serial Communication
    • Part V. Miscellaneous
      • Virtualization Cheat Sheet
      • OpenBSD Cheatsheet
      • How-to Guides
        • Complete the First 30 Minutes After Installation
        • Check Hardware Compatibility Before Installing
        • Bootstrap Wi-Fi Firmware Without Ethernet
        • Set Up OpenBSD as a Laptop or Workstation
        • Configure Laptop Power Management
        • Run OpenBSD as a Virtual Machine Guest
        • Install OpenBSD on a VPS or Cloud Server
        • Install OpenBSD with Full-Disk Encryption
        • Troubleshoot Web Browsers on OpenBSD
        • Create an Administrator Account with doas and SSH Keys
        • Establish a Conservative Security Baseline
        • Manage OpenBSD with Ansible
        • Recover Access and Reset the Root Password
        • Collect OpenBSD Diagnostic Evidence
        • Configure Secure Remote Access with OpenSSH
        • Set Up WordPress on OpenBSD
        • Build Third-Party Software from Ports
        • Use FIDO Security Keys with OpenSSH
        • Build OpenBSD from Source
        • Configure Wi-Fi Roaming and Wired Failover
        • Dual-Boot OpenBSD on a UEFI System
        • Troubleshoot PF, NAT, and Routing
        • Automate OpenBSD Installation with Autoinstall and PXE
        • Route Multiple VLANs with PF
        • Configure a Road-Warrior WireGuard VPN
        • Troubleshoot Package Installation and Update Failures
        • Route IPv6 Networks without NAT
        • Schedule Recurring Maintenance
        • Plan a Docker Workload Migration to OpenBSD
        • Build a Mail Server with OpenSMTPD, Dovecot, and Rspamd
        • Build a Simple Router and Firewall
        • Monitor an OpenBSD System
        • Back Up and Restore an OpenBSD System
        • Configure softraid RAID1
        • Recover an OpenBSD System That Does Not Boot
        • Install Z shell (zsh)
      • OpenBSD for Linux Users
      • OpenBSD for FreeBSD Users
      • OpenBSD for macOS Users
    • OpenBSD FAQ
    • OpenBSD Architectures
      • OpenBSD Package Search

        suricata-7.0.7p0

        Package search / Categories / Current snapshot
        โ† Back to search
        OpenBSD branch
        OpenBSD 8.0 releaseCurrent snapshot

        Current snapshot ยท amd64

        high performance network IDS, IPS and security monitoring

        Project homepage: https://suricata.io/

        Description

        Suricata is a free and open source, mature, fast and robust network threat detection engine. The Suricata engine is capable of real time intrusion detection (IDS), inline intrusion prevention (IPS), network security monitoring (NSM) and offline pcap processing. Suricata inspects the network traffic using a powerful and extensive rules and signature language, and has powerful Lua scripting support for detection of complex threats. With standard input and output formats like YAML and JSON integrations with tools like existing SIEMs, Splunk, Logstash/Elasticsearch, Kibana, and other database become effortless.

        Package information

        Ports path
        security/suricata
        Package architecture
        amd64
        Maintainer
        Gonzalo L. R. <gonzalo@openbsd.org>
        Categories
        security, lang/python, lang/rust
        Available flavors
        None listed
        Only for architectures
        aarch64, amd64, arm, i386, mips64, mips64el, powerpc, powerpc64, riscv64, sparc64, alpha, hppa
        Excluded architectures
        powerpc64, riscv64

        Ports list build and test dependencies as well as runtime dependencies. pkg_add selects those needed for installation.

        Direct dependencies

        Library

        • archivers/lz4
        • converters/libiconv
        • devel/jansson
        • devel/libyaml
        • devel/libmagic
        • devel/pcre2
        • net/libnet/1.1
        • net/libmaxminddb

        Runtime

        • textproc/py-yaml
        • lang/python/3

        Build

        • devel/py-setuptools
        • textproc/py-sphinx
        • textproc/py-sphinx_rtd_theme
        • textproc/py-yaml
        • lang/python/3
        • lang/rust
        • devel/metaauto
        • devel/autoconf/2.71
        • devel/dwz

        Test

        • lang/python/3
        OpenBSD README

        This README contains unresolved ports variables; replace them before using its commands.

        +-----------------------------------------------------------------------
        | Running suricata on OpenBSD
        +-----------------------------------------------------------------------
        
        Starting Suricata
        =================
        For normal use, you need to first set your interface and enable the
        daemon:
        
        # rcctl enable suricata
        # rcctl set suricata flags -i em0
        
        The default configuration uses a very basic set of rules bundled with
        Suricata and installed in the ${SYSCONFDIR}/suricata/rules directory.
        A standard installation uses additional rules as shown in the following
        section.
        
        Rule management
        ===============
        It is possible to download and install rules manually, but it is easier
        and quicker to use one of the available tools to do this.
        
        suricata-update
        ---------------
        suricata-update is the recommended way to install and update rules.
        Run it with the -D flag to download the rules to the directory
        suricata expects (${LOCALSTATEDIR}/suricata/rules):
        
        # suricata-update -D ${LOCALSTATEDIR}/suricata
        
        Oinkmaster
        ----------
        The other common method is with Oinkmaster which can be installed with:
        
        # pkg_add oinkmaster
        
        There are several rulesets. There is for example Emerging Threats (ET)
        Emerging Threats Pro and VRT. In this example we are using Emerging
        Threats.
        
        Oinkmaster has to know where the rules an be found. These rules can be
        found at:
        
        https://rules.emergingthreats.net/open/suricata/emerging.rules.tar.gz
        
        And you can download as follow:
        
        # cd /etc && oinkmaster -C ${SYSCONFDIR}/oinkmaster.conf \
        	-o ${SYSCONFDIR}/suricata/rules
        
        Edit ${SYSCONFDIR}/suricata/suricata.yaml, comment out the default
        default-rule-path section and uncomment the commented out
        default-rule-path section.
        
        After updating rules
        --------------------
        After installing the new rulesets with one of the above methods, restart
        Suricata to pick them up:
        
        # rcctl restart suricata
        
        Note that the installed rules have to be updated regularly by the program
        used to fetch them initially. For example use cron to update the rules
        every 24h.
        
        Inline mode (IPS)
        =================
        The default configuration captures packets via pcap on a network interface
        and runs detection methods.
        
        Suricata can also run "inline" in Intrusion Prevention mode. To do this,
        add the following to /etc/pf.conf:
        
        	pass out quick on egress inet proto tcp to port 80 divert-packet port 700
        
        Adjust this to match what traffic Suricata will need to inspect as well as
        the divert port use. Configure to enable inline mode on divert port 700
        like this:
        
        # rcctl set suricata flags -d 700
        
        Outbound packets might not have a correct checksum yet due to checksum
        offloading, therefore Suricata will log "SURICATA TCPv4 invalid checksum"
        and ignore these packets. This can be worked around with the following
        setting in suricata.yaml:
        
        	stream:
        	  checksum-validation: yes
        
        Also adjust the configuration to drop packets:
        
        	- drop:
        	  enabled: yes
        
        (Re)start Suricata for the changes to take effect. Note that IPS mode is
        mutually exclusive with pcap live mode (-i).
        

        Package guides

        • Installing and updating packages

        Package details as JSON

        Report a bug