Suricata/Konfiguration: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Konfiguration == | '''topic''' - Kurzbeschreibung | ||
; | === Beschreibung === | ||
=== Konfiguration === | |||
; /etc/suricata/ | |||
* Dort sollte mindestens die Datei ''suricata.yaml'' zu finden sein, die die Hauptkonfiguration beinhaltet | * Dort sollte mindestens die Datei ''suricata.yaml'' zu finden sein, die die Hauptkonfiguration beinhaltet | ||
; Je nach eingesetzter Distribution kann der Dateiname auch anders lauten | |||
* Bei Debian und Ubuntu etwa findet man die Konfiguration in ''/etc/suricata/suricata-debian.yaml'' | * Bei Debian und Ubuntu etwa findet man die Konfiguration in ''/etc/suricata/suricata-debian.yaml'' | ||
* Hier lässt sich nicht nur das Regelwerk und die Einbindung von Netzwerkschnittstellen konfigurieren, sondern auch die Paketanalyse steuern | * Hier lässt sich nicht nur das Regelwerk und die Einbindung von Netzwerkschnittstellen konfigurieren, sondern auch die Paketanalyse steuern | ||
Zeile 8: | Zeile 11: | ||
; Suricata zieht zur Paketanalyse verschiedene Variablen heran und nutzt diese Informationen bei der Frage, welche Regeln für das aktuelle Paket überhaupt in Betracht kommen | ; Suricata zieht zur Paketanalyse verschiedene Variablen heran und nutzt diese Informationen bei der Frage, welche Regeln für das aktuelle Paket überhaupt in Betracht kommen | ||
* Wozu sollte man auch ein Paket auf eine Vielzahl von Angriffsmustern für Webserver analysieren, wenn auf der IP-Adresse gar kein Webserver horcht? | * Wozu sollte man auch ein Paket auf eine Vielzahl von Angriffsmustern für Webserver analysieren, wenn auf der IP-Adresse gar kein Webserver horcht? | ||
* Es geht also darum, Suricata das zu schützende Netz möglichst genau zu beschreiben | * Es geht also darum, Suricata das zu schützende Netz möglichst genau zu beschreiben | ||
; Allen voran ist hier die wichtigste Variable <tt>HOME_NET</tt> zu nennen | ; Allen voran ist hier die wichtigste Variable <tt>HOME_NET</tt> zu nennen | ||
* Diese Variable gibt den Adressbereich an, der durch das IDS geschützt werden soll, und kann eine einzelne IP-Adresse oder ein Netzwerkbereich sein. | * Diese Variable gibt den Adressbereich an, der durch das IDS geschützt werden soll, und kann eine einzelne IP-Adresse oder ein Netzwerkbereich sein. | ||
* In einer üblichen kleineren Netzwerktopologie wird man hier in der Praxis das LAN und vielleicht eine externe IP-Adresse finden. | * In einer üblichen kleineren Netzwerktopologie wird man hier in der Praxis das LAN und vielleicht eine externe IP-Adresse finden. | ||
* Also z.B. <tt>HOME_NET: "[192.168.0.0/16,1.2.3.4]"</tt>. | * Also z. B. <tt>HOME_NET: "[192.168.0.0/16,1.2.3.4]"</tt>. | ||
* Das Hinzufügen der externen IP-Adresse hat den Vorteil, dass potentielle Angriffe auf das Suricata-System selbst ebenfalls erkannt werden. | * Das Hinzufügen der externen IP-Adresse hat den Vorteil, dass potentielle Angriffe auf das Suricata-System selbst ebenfalls erkannt werden. | ||
* Ist das Suricata-System auch das Gateway für das interne Netz, sollte die externe IP-Adresse auf jeden Fall in das <tt>HOME_NET</tt> aufgenommen werden, da aufgrund von SNAT-Techniken (IP-Maskierung) sonst einige Angriffsmuster nicht als solche erkannt werden. | * Ist das Suricata-System auch das Gateway für das interne Netz, sollte die externe IP-Adresse auf jeden Fall in das <tt>HOME_NET</tt> aufgenommen werden, da aufgrund von SNAT-Techniken (IP-Maskierung) sonst einige Angriffsmuster nicht als solche erkannt werden. | ||
Zeile 21: | Zeile 24: | ||
* Demnach wird alles als extern und potentiell böswillig angesehen, was nicht zum internen Netz gehört. | * Demnach wird alles als extern und potentiell böswillig angesehen, was nicht zum internen Netz gehört. | ||
; Neben <tt>HOME_NET</tt> und <tt>EXTERNAL_NET</tt> können eine Reihe weiterer Angaben gemacht werden, die eine noch gezieltere Auswertung möglich machen und z.B. | ; Neben <tt>HOME_NET</tt> und <tt>EXTERNAL_NET</tt> können eine Reihe weiterer Angaben gemacht werden, die eine noch gezieltere Auswertung möglich machen und z. B. | ||
* die Erkennung von protokollspezifischen Mustern auf einzelne IP-Adressen beschränkt. | * die Erkennung von protokollspezifischen Mustern auf einzelne IP-Adressen beschränkt. | ||
* Wenn z.B. bekannt ist, dass der einzige zu überwachende Webserver die IP-Adresse 192.168.1.100 hat, dann kann auch die Detektion von webbasierten Angriffen auf diese IP-Adresse beschränkt werden. | * Wenn z. B. bekannt ist, dass der einzige zu überwachende Webserver die IP-Adresse 192.168.1.100 hat, dann kann auch die Detektion von webbasierten Angriffen auf diese IP-Adresse beschränkt werden. | ||
* Selbiges gilt entsprechend für DNS-, SQL-, Telnet-Server und analog für <tt>*_CLIENT</nowiki></tt>- und <tt><nowiki>*_PORTS</tt>-Variablen. | * Selbiges gilt entsprechend für DNS-, SQL-, Telnet-Server und analog für <tt>*_CLIENT</nowiki></tt>- und <tt><nowiki>*_PORTS</tt>-Variablen. | ||
* Selbst der vom Betriebssystem abhängige Umgang mit fragmentierten Paketen lässt sich Suricata mitteilen – vorausgesetzt, der Adressbereich für verschiedene Betriebssysteme im lokalen Netz ist hinreichend stark fragmentiert: | * Selbst der vom Betriebssystem abhängige Umgang mit fragmentierten Paketen lässt sich Suricata mitteilen – vorausgesetzt, der Adressbereich für verschiedene Betriebssysteme im lokalen Netz ist hinreichend stark fragmentiert: | ||
Zeile 34: | Zeile 37: | ||
Je genauer diese sind, desto performanter ist der Analyse-Prozess und desto weniger falsch-positive Meldungen treten auf. | Je genauer diese sind, desto performanter ist der Analyse-Prozess und desto weniger falsch-positive Meldungen treten auf. | ||
=== Dateien === | ==== Dateien ==== | ||
; The main configuration file is /etc/suricata/suricata.yaml | ; The main configuration file is /etc/suricata/suricata.yaml | ||
Zeile 45: | Zeile 48: | ||
magic-file: /usr/share/file/misc/magic.mgc | magic-file: /usr/share/file/misc/magic.mgc | ||
=== Starting Suricata === | |||
== Starting Suricata == | |||
; Manual startup | ; Manual startup | ||
You may start the suricata service manually with: | You may start the suricata service manually with: | ||
Zeile 55: | Zeile 56: | ||
To start Suricata automatically at system boot, enable suricata.service | To start Suricata automatically at system boot, enable suricata.service | ||
[[Kategorie: | <noinclude> | ||
== Anhang == | |||
=== Siehe auch === | |||
{{Special:PrefixIndex/{{BASEPAGENAME}}}} | |||
==== Sicherheit ==== | |||
==== Dokumentation ==== | |||
==== Links ==== | |||
===== Projekt ===== | |||
===== Weblinks ===== | |||
[[Kategorie:Suricata]] | |||
</noinclude> |
Aktuelle Version vom 30. Mai 2023, 22:24 Uhr
topic - Kurzbeschreibung
Beschreibung
Konfiguration
- /etc/suricata/
- Dort sollte mindestens die Datei suricata.yaml zu finden sein, die die Hauptkonfiguration beinhaltet
- Je nach eingesetzter Distribution kann der Dateiname auch anders lauten
- Bei Debian und Ubuntu etwa findet man die Konfiguration in /etc/suricata/suricata-debian.yaml
- Hier lässt sich nicht nur das Regelwerk und die Einbindung von Netzwerkschnittstellen konfigurieren, sondern auch die Paketanalyse steuern
- Suricata zieht zur Paketanalyse verschiedene Variablen heran und nutzt diese Informationen bei der Frage, welche Regeln für das aktuelle Paket überhaupt in Betracht kommen
- Wozu sollte man auch ein Paket auf eine Vielzahl von Angriffsmustern für Webserver analysieren, wenn auf der IP-Adresse gar kein Webserver horcht?
- Es geht also darum, Suricata das zu schützende Netz möglichst genau zu beschreiben
- Allen voran ist hier die wichtigste Variable HOME_NET zu nennen
- Diese Variable gibt den Adressbereich an, der durch das IDS geschützt werden soll, und kann eine einzelne IP-Adresse oder ein Netzwerkbereich sein.
- In einer üblichen kleineren Netzwerktopologie wird man hier in der Praxis das LAN und vielleicht eine externe IP-Adresse finden.
- Also z. B. HOME_NET: "[192.168.0.0/16,1.2.3.4]".
- Das Hinzufügen der externen IP-Adresse hat den Vorteil, dass potentielle Angriffe auf das Suricata-System selbst ebenfalls erkannt werden.
- Ist das Suricata-System auch das Gateway für das interne Netz, sollte die externe IP-Adresse auf jeden Fall in das HOME_NET aufgenommen werden, da aufgrund von SNAT-Techniken (IP-Maskierung) sonst einige Angriffsmuster nicht als solche erkannt werden.
- Die Variable EXTERNAL_NET gibt an, welche IP-Adressen nicht zum lokalen Netzwerk gehören.
- Die Standardeinstellung ist auf EXTERNAL_NET: "!$HOME_NET" vorgegeben.
- Demnach wird alles als extern und potentiell böswillig angesehen, was nicht zum internen Netz gehört.
- Neben HOME_NET und EXTERNAL_NET können eine Reihe weiterer Angaben gemacht werden, die eine noch gezieltere Auswertung möglich machen und z. B.
- die Erkennung von protokollspezifischen Mustern auf einzelne IP-Adressen beschränkt.
- Wenn z. B. bekannt ist, dass der einzige zu überwachende Webserver die IP-Adresse 192.168.1.100 hat, dann kann auch die Detektion von webbasierten Angriffen auf diese IP-Adresse beschränkt werden.
- Selbiges gilt entsprechend für DNS-, SQL-, Telnet-Server und analog für *_CLIENT</nowiki>- und <nowiki>*_PORTS-Variablen.
- Selbst der vom Betriebssystem abhängige Umgang mit fragmentierten Paketen lässt sich Suricata mitteilen – vorausgesetzt, der Adressbereich für verschiedene Betriebssysteme im lokalen Netz ist hinreichend stark fragmentiert:
host-os-policy: windows: [0.0.0.0/0] # Default bsd: [192.168.1.1] # Gateway linux: [192.168.1.128/25, 192.168.1.100] # Linux Webservers
- Bei allen von Suricata genutzten Variablen gilt
Je genauer diese sind, desto performanter ist der Analyse-Prozess und desto weniger falsch-positive Meldungen treten auf.
Dateien
- The main configuration file is /etc/suricata/suricata.yaml
- You should change the following parts of the configuration in order to make it run
default-log-dir: /var/log/suricata/ # where you want to store log files classification-file: /etc/suricata/classification.config reference-config-file: /etc/suricata/reference.config HOME_NET: "[10.0.0.0/8]" # your local network host-os-policy: .. # according to the OS running the ips magic-file: /usr/share/file/misc/magic.mgc
Starting Suricata
- Manual startup
You may start the suricata service manually with:
# /usr/bin/suricata -c /etc/suricata/suricata.yaml -i eth0
- systemd service configuration
To start Suricata automatically at system boot, enable suricata.service