OPNsense Intrusion Detection und Intrusion Prevention konfigurieren

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

Die Open Source Firewall Distribution OPNsense bietet vielfältige Möglichkeiten um das Netzwerk abzusichern. Zu diesen Funktionen gehört standardmäßig auch ein Intrusion Detection System. Es basiert auf der Software Suricata und ist bereits vorinstalliert. Sie können diese Funktion bequem im Webinterface der OPNsense Firewall aktivieren und administrieren. Dieser Artikel zeigt anhand von OPNsense 24.7, wie sie ein Intrusion Detection System aktivieren und einrichten.

Funktionsarten

Die Software Suricata, auf dieser das OPNsense Intrusion Detection System basiert, bietet verschiedene Betriebsarten:

  • IDS Modus (Intrusion Detection): Bedeutet eine Alarmierung von Angriffen
  • IPS Modus (Intrusion Prevention): Bedeutet neben der Alarmierung auch eine Blockierung von Angriffen

Konfiguration im OPNsense Webinterface

Die Konfiguration von IDS und IPS läuft wie bei OPNsense üblich gänzlich im Webinterface ab.

Intrusion Detection aktivieren

Das Intrusion Detection System ist mit wenigen Konfigurationsschritten aktiviert. Dies erfolgt im Menü Services → Intrusion Detection → Administration und dessen Tabs.

Regeln auswählen und aktivieren

In diesem Reiter könnnen Sie die Regeln herunterladen und den Status der heruntergeladenen und aktivierten Regeln betrachten.

Reiter Rules

Dieser Reiter listet alle heruntergeladenen Regeln im Detail auf. Es gibt Filtermöglichkeiten zur Suche und Sie können einzelne Regeln deaktivieren.

Reiter User defined

In diesem Reiter können Sie selber eigene Regeln definieren.

Reiter Alerts

Dieser Reiter listet alle Alerts des IDS/IPS auf.

Reiter Schedule

In diesem Reiter können Sie Cronjobs für eine periodische Aktualisierung der Regeln erstellen. Dies ist ein äußerst wichtiger Schritt, denn die Regeln müssen möglichst aktuell sein um einen Schutz vor Angriffen zu bieten.

Intrusion Prevention Modus aktivieren

Sie können den Modus von einer reinen Angriffserkennung und Alarmierung (IDS) auf eine Angriffsverhinderung (IPS) umstellen. Ein Tipp hierbei ist, zuerst den IDS Modus zu aktivieren und die Logs zu beobachten. Es treten oftmals auch False-positives auf.

Konfigurationsdateien

Dieser Abschnitt zeigt noch einige interessante Konfigurationsordner und Dateien zu Informationszwecken auf. Die Konfiguration erfolgt aber gänzlich im Webinterface.

Suricata Konfigurationsordner

Den Suricata Konfigurationsordner finden Sie bei OPNsense unter /usr/local/etc/suricata.

root@lesv4:/usr/local/etc/suricata # ls -la
total 181
drwxr-xr-x   4 root wheel    17 Aug 28 09:16 .
drwxr-xr-x  44 root wheel   133 Aug 28 08:45 ..
-rw-r--r--   1 root wheel  3882 Aug 28 09:23 classification.config
-rw-r--r--   1 root wheel  3327 Jul 22 22:54 classification.config.sample
-rw-r--r--   1 root wheel    88 Aug 28 09:23 custom.yaml
-rw-r-----   1 root wheel   193 Aug 28 12:00 installed_rules.yaml
drwxr-x---   2 root wheel     8 Aug 28 09:23 opnsense.rules
-rw-r--r--   1 root wheel  1376 Aug 28 09:23 reference.config
-rw-r--r--   1 root wheel  1375 Jul 22 22:54 reference.config.sample
-rw-r--r--   1 root wheel     0 Aug 28 09:23 rule-policies.config
-rw-r--r--   1 root wheel   230 Aug 28 09:23 rule-updater.config
drwxr-x---   2 root wheel    10 Aug 28 12:00 rules
-rw-r--r--   1 root wheel   195 Aug 28 09:23 rules.config
-rw-r--r--   1 root wheel 82357 Aug 28 09:23 suricata.yaml
-rw-r--r--   1 root wheel 85797 Jul 22 22:54 suricata.yaml.sample
-rw-r--r--   1 root wheel  1643 Jul 22 22:54 threshold.config
-rw-r--r--   1 root wheel  1643 Jul 22 22:54 threshold.config.sample

root@OPNsense:/usr/local/etc/suricata/opnsense.rules #

root@lesv4:/usr/local/etc/suricata # cd opnsense.rules/

root@lesv4:/usr/local/etc/suricata/opnsense.rules # ls -la
total 4984
drwxr-x---  2 root wheel        8 Aug 28 09:23 .
drwxr-xr-x  4 root wheel       17 Aug 28 09:16 ..
-rw-r-----  1 root wheel       97 Aug 28 12:00 OPNsense.rules
-rw-r-----  1 root wheel      758 Aug 28 12:00 abuse.ch.feodotracker.rules
-rw-r-----  1 root wheel  1880145 Aug 28 12:00 abuse.ch.sslblacklist.rules
-rw-r-----  1 root wheel    14271 Aug 28 12:00 abuse.ch.sslipblacklist.rules
-rw-r-----  1 root wheel 17863053 Aug 28 12:00 abuse.ch.threatfox.rules
-rw-r-----  1 root wheel 26582872 Aug 28 12:00 abuse.ch.urlhaus.rules

Inhalt einer Blockliste

Nachfolgend beispielhaft der Anfang einer Blockliste. Sie finden diese Dateien unter /usr/local/etc/suricata/opnsense.rules.

root@lesv4:/usr/local/etc/suricata/opnsense.rules # head abuse.ch.urlhaus.rules
################################################################
# abuse.ch URLhaus IDS ruleset (Suricata only)                 #
# Last updated: 2024-08-28 11:53:05 (UTC)                      #
#                                                              #
# Terms Of Use: https://urlhaus.abuse.ch/api/                  #
# For questions please contact urlhaus [at] abuse.ch           #
################################################################
#
# url
alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"URLhaus Known malware download URL detected (3132684)"; flow:established,from_client; http.method; content:"GET"; http.uri; content:"/bin.sh"; depth:7; endswith; nocase; http.host; content:"115.52.23.231"; depth:13; isdataat:!1,relative; metadata:created_at 2024_08_28; reference:url, urlhaus.abuse.ch/url/3132684/; classtype:trojan-activity;sid:83995784; rev:1;)

Autor: Thomas Niedermeier

Thomas Niedermeier arbeitet im Product Management Team von Thomas-Krenn. Er absolvierte an der Hochschule Deggendorf sein Studium zum Bachelor Wirtschaftsinformatik. Seit 2013 ist Thomas bei Thomas-Krenn beschäftigt und kümmert sich unter anderem um OPNsense Firewalls, das Thomas-Krenn-Wiki und Firmware Sicherheitsupdates.

 

Das könnte Sie auch interessieren

Inbetriebnahme vorinstallierter Thomas-Krenn OPNsense Firewalls
Intel Microcode per Plugin unter OPNsense aktualisieren
OPNsense root Passwort zurücksetzen