Die Popularität von Suricata ist darauf zurückzuführen, dass es sich um eine unabhängige Open-Source-Engine zur Erkennung von Bedrohungen handelt, die ein Lebensretter für Netzwerkadministratoren ist, die nach einer nahtlosen und leistungsfähigen Methode zur Untersuchung und Verwaltung von Netzwerkverkehrsproblemen suchen. Einige der Funktionsattribute von Suricata umfassen das Auslösen von Warnungen, das Generieren von Protokollereignissen und das Verwalten von kompromittiertem eingehendem Datenverkehr.
Suricata ist in der Lage, die raffiniertesten Netzwerkangriffe durch die Kombination von vier kritischen Netzwerkfunktionen zu neutralisieren:
- PCAP-Verarbeitung
- Netzwerksicherheitsüberwachung (NSM)
- Intrusion Detection (IDS)
- Intrusion Prevention (IPS)
Seit Suricata benutzerdefinierte und von der Community erstellte Signaturen verwendet, ist die Bereitstellung auf einem Netzwerk-Gateway-Host nicht so kompliziert, wie es scheinen mag. Nach der Bereitstellung kann der ein- und ausgehende Netzwerkverkehr anderer Systeme problemlos gescannt werden. Wenn Sie Suricata bevorzugen auf Ihrem lokalen/individuellen Rechner ausgeführt wird, können Sie damit auch eingehenden und ausgehenden Netzwerkverkehr scannen und verwalten.
Dieser Artikelleitfaden führt uns durch die Installation und grundlegende Konfiguration von Suricata auf einem RHEL , CentOS , Rocky Linux , und AlmaLinux System. Von dort aus sollten Sie in der Lage sein, eine Vorstellung davon zu bekommen, wie man es benutzt.
Die empfohlenen Maschinenspezifikationen für diesen Artikelleitfaden sind 4/8 GB RAM und mindestens 2 CPUs wenn Sie beabsichtigen, Suricata in einer Produktionsumgebung zu verwenden. Dies liegt daran, dass Suricata mehr Ressourcen benötigt, um den mit Produktionsumgebungen verbundenen starken Netzwerkverkehr zu verwalten. Auf einem lokalen Rechner sind 2 CPUs und 4 GB RAM ideal genug.
Suricata in RHEL 8 installieren
Aktualisieren Sie zuerst Ihr System und installieren Sie dann CodeReady Repository.
$ sudo yum update $ sudo subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
Sobald der CodeReady Repository aktiviert ist, müssen Sie mehrere Pakete installieren, die stattfinden müssen, bevor wir Suricata herunterladen und installieren können .
$ sudo yum install diffutils file-devel gcc jansson-devel make nss-devel libyaml-devel libcap-ng-devel libpcap-devel pcre-devel python3 python3-pyyaml rust-toolset zlib-devel
Als nächstes können Sie wget oder curl verwenden Befehl, um die neueste Suricata-Versionsnummer von seiner Homepage herunterzuladen.
$ wget https://www.openinfosecfoundation.org/download/suricata-6.0.4.tar.gz OR $ curl -OL https://www.openinfosecfoundation.org/download/suricata-6.0.4.tar.gz
Nachdem Sie nun eine Kopie von Suricata heruntergeladen haben und da es bereits archiviert ist, müssen wir es zuerst extrahieren, in sein Hauptverzeichnis navigieren, es erstellen und dann installieren.
$ tar xvf suricata-6.0.4.tar.gz $ cd suricata-6.0.4 $ sudo ./configure --sysconfdir=/etc --localstatedir=/var $ sudo make $ sudo make install $ sudo make install-conf
Da das Makefile von Suricata eine Installationsoption für IDS enthält Regelsätze, wir können sie mit dem folgenden Befehl installieren.
$ sudo make-install rules
Überprüfen Sie die Versionsinformationen der Suricata-Installation.
$ suricata --build-info
Suricata in RHEL 8 konfigurieren
Öffnen Sie die Suricata-Konfigurationsdatei /etc/suricata/suricata.yaml .
$ sudo nano /etc/suricata/suricata.yaml
Unter den vars :Abschnitt haben wir HOME_NET die auf Netzwerk-IP-Adressen verweist, die überprüft werden müssen. Sie können diesen Abschnitt mit Ihren bevorzugten Netzwerk-IP-Werten bearbeiten.
Ein weiterer erwähnenswerter Dateiabschnitt ist die host-os-policy :
Sie können diesen Abschnitt mit entsprechenden betriebssystembasierten IP-Adressen bearbeiten, um den Verteidigungsmechanismus von Suricata vor bekannten ausbeuterischen Angriffen zu verbessern.
Suricata Intrusion Detection testen
Führen Sie den folgenden Befehl aus, um die Anzahl der von Suricata unterstützten Ausführungsmodi zu ermitteln:
$ sudo /usr/local/bin/suricata --list-runmodes
Um Suricata zu sehen Notieren Sie sich in Aktion zunächst die Netzwerkschnittstelle, an der Sie interessiert sind:
$ ifconfig
Beispielsweise um die Netzwerkschnittstelle virbr0 zu bewerten Führen Sie gemäß der obigen Bildschirmaufnahme den folgenden Befehl aus:
$ sudo /usr/local/bin/suricata -c /etc/suricata/suricata.yaml -i virbr0 --init-errors-fatal
Für Schnittstelle enp0s3 , lautet die Ausgabe:
$ sudo /usr/local/bin/suricata -c /etc/suricata/suricata.yaml -i enp0s3 --init-errors-fatal
Das Verzeichnis /var/log/suricata enthält die Erkennungsprotokolle von Suricata.
$ tail -f /var/log/suricata/suricata.log
Anpassen von Suricata wird seine Erkennungsabdeckung und -leistung erweitern. Weitere Informationen zur Verwendung von Suricata finden Sie auf der Manpage.
$ man suricata
Sein Online-Wiki bietet auch eine breitere Perspektive auf seine Verwendung.