SIEM
Nutzen Sie unser SIEM, um Informationen über die Sicherheitslage Ihres IT-Netzwerks zu sammeln und zu analysieren
Last updated
Nutzen Sie unser SIEM, um Informationen über die Sicherheitslage Ihres IT-Netzwerks zu sammeln und zu analysieren
Last updated
Sichern Sie Ihre Daten mit unserem leistungsstarken SIEM: Kontaktieren Sie unsere Experten über sales@enginsight.com, um schnellstmöglich durchzustarten und erhalten Sie Unterstützung bei Ihrer Installation!
Für die Installation des SIEMs benötigen Sie folgende Komponenten
1x SIEM Management Server
4CPU, 8GB RAM, 200GB Disk
1X SIEM Index Server
4CPU, 8GB RAM, 200GB Disk
Dieses Setup ist ausschließlich für einen Workload von 10 GB Pro Tag ausgelegt! Falls Sie höhere Anforderungen haben, lassen Sie sich gern von uns individuell beraten.
Weiterhin müssen folgende Firewall Regeln freigegeben werden:
NGS APP Server -> SIEM Management Server - Port 443
SIEM Index Server <- SIEM Management Server - Port 8983
Erstellen Sie auf allen VMs einen Swap, sollten Sie diesen bisher nicht haben.
Erstellen Sie eine URL für Ihren SIEM Server z.B.: ngs-siem.ihre-domain.de
.
Für diese muss ein Zertifikat im PEM Format vorliegen. Nutzen Sie ein selbst signiertes Zertifikat beachten Sie bitte diese Anleitung.
Bitte verändern Sie nicht die unten bereitgestellten Docker Konfigurationen, da diese aufeinander abgestimmt sind.
Der SIEM Management Server empfängt die Logs über die API und sendet diese an den SIEM Index Server weiter, wo sie vearbeitet werden.
Hierfür werden folgende Komponenten installiert:
nginx
docker-ce
docker-ce-cli
containerd.io
docker-buildx-plugin
docker-compose-plugin
Enginsight Loggernaut
Erstellen Sie einen Ordner für Docker und navigieren Sie in diesen
Passen Sie die docker-compose.yml an
Fügen und ergänzen Sie folgende Konfiguration
Die <IPvomSIEMManagementServer> entspricht der internen IP Adresse des SIEM-Management Servers. Diese muss sowohl von dem Management Server, als auch von den anderen SIEM Index Server(n) erreichbar sein.
Legen Sie die Verzeichnisse an, die in der docker-compose definiert sind:
Starten Sie den Docker Container
Prüfen Sie, ob Ihr Docker Container läuft
Installieren Sie nginx
Erstellen Sie Benutzername und Passwort für die Authentifizierung am SIEM Management Server.
Hierbei werden Benutzername und Passwort automatisch generiert. (BasicAuth)
Sie erhalten folgenden Output:
Speichern Sie den Code ab, da Sie diesen später für die Anpassung des App Servers benötigen.
Passen Sie die nginx Konfiguration an:
Hierfür öffnen Sie die Konfiguration:
und passen diese wie folgt an:
Überprüfen Sie die nginx Konfiguration:
Starten Sie den nginx neu, um die Konfiguration zu übernehmen:
Erstellen Sie einen Ordner für Docker und navigieren Sie in diesen:
Passen Sie die docker-compose.yml an:
Fügen und ergänzen Sie folgende Konfiguration:
<IPvomSIEMIndexServer> entspricht der IP, des SIEM Index Servers
<IPvomSIEMManagementServer> entspricht der IP des SIEM Management Servers
Bei SOLR_JAVA_MEM muss der RAM für den Container eingestellt werden. Die Empfehlung ist, mindestens immer 1/4 des gesamten RAMs zu vergeben.
Legen Sie Verzeichnisse an und vergeben Sie Rechte, um darauf zuzugreifen:
Die Verwendung des Nutzers 8983 aus dem Docker-Container ist korrekt und bedeutsam. Führen Sie diesen Schritt zwingend durch, um die Installation erfolgreich durchführen zu können.
Starten Sie den Docker Container:
Überprüfen Sie, ob der Port ausschließlich für die interne Adresse offen ist. Hier für können Sie dienet-tools
installieren (sudo apt install net-tools
).
Das Ergebnis sollte wie folgt aussehen:
Achten Sie darauf, dass unter Host die richtige IP Adresse erscheint.
Sollten Sie einen zuzsätzlichen Indexserver installieren wollen, passen Sie bitte die Konfiguration, wie in Schritt 3 unter nginx installieren erklärt, an.
Um die Funktionalitäten in der SIEM KI verwenden zu können, bedarf es einiger Konfigurationen.
Hierbei handelt es sich um eine Betafunktionalität. Bitte beachten Sie, dass es bei Vorhersagen der Metriken und der daraus resultierenden Anomalie-Erkennung vereinzelt zu Fehlern kommen kann.
Betroffene Komponenten updaten.
Die aktuellen Versionen der einzelnen Komponenten finden Sie immer hier:
https://github.com/enginsight/enterprise/blob/master/docker-compose.yml
Experimentellen ML Modus im Loggernaut aktivieren.
Passen Sie dazu die Konfigurationsdatei unter
an, indem sie folgende Zeile auf Root Ebene hinzufügen:
Starten Sie den Loggernaut danach neu um die Konfiguration zu übernehmen.
Docker installieren.
Docker Compose anlegen.
Folgendes muss in der docker-compose.yml enthalten sein:
Sollte das Machine Learning auf der selben Machine wie der Loggernaut laufen und zu große CPU Last erzeugen, sodass der Loggernaut den Logdurchsatz nicht mehr händeln kann, empfehlen wir die CPU-Shares des Containers zu reduzieren, damit andere Prozesse eine höhere Priorität haben.
Hierfür ist diese Anpassung an der docker-compose.yml notwendig:
Anpassungen an Nginx Config vom Management Server für Websocket Support.
Passen Sie folgende Datei an: /etc/nginx/sites-available/default
Überprüfen Sie die Config auf Fehler:
Starten Sie nginx neu um die Config zu übernehmen:
Stellen Sie sicher, dass Sie über root-Rechte verfügen. Sollte dies nicht der Fall sein, melden Sie sich als Superuser an.
Stellen Sie sicher, dass die aktuelle Version von Docker und Docker Compose installiert ist. Die aktuellen Versionsnummern finden Sie hier: Docker Engine, Docker Compose.
Installieren Sie Docker nicht über Snap oder bei der Installation des Betriebssystems, sondern installieren Sie Docker ausschließlich aus den Paketquellen der offiziellen Anleitung.
Loggen Sie sich bei Docker ein.
Die Zugangsdaten erhalten Sie von uns.
Wenn es bei der Authentifizierung zu Problemen kommt, überprüfen Sie, ob ein aktueller gpg2 Key vorliegt und generieren Sie ihn gegebenenfalls automatisch:
apt install gnupg2
gpg2 --gen-key
Starten Sie den Container mit den eben durchgeführten Anpassungen.
Passen Sie die Konfiguration des Enginsight APP Servers und den Zugriff an, um mit Ihrem SIEM Management Server zu kommunizieren.
Wechseln Sie in die Konfigurationsdatei:
fügen Sie in die Konfiguration folgenden Abschnitt ein
Füllen Sie "basicAuth" mit Ihren Credentials aus, die Sie im Proxy hinterlegt haben.
Bei der URL tragen Sie die URL des SIEMs Servers ein oder dessen IP Adresse.
numShards sind für das parallele Abarbeiten der Anfragen zuständig. Hier sollten mindestens 2 angegeben werden. Bei größeren Instanzen sollte die hälfte der Kerne hinterlegt werden. Bei einem Server mit 8 Kernen, entsprechend 4. Der replicationFactor ist für die Replication verantwortlich. Die Daten werden auf mehreren Servern verteilt. Der Vorteil ist, dass die anderen Index Server bei einem Ausfall eingreifen können. Jedoch steigt der Verbauch des Speichers. Sie können, wenn gewünscht, die Anzahl Ihrer Index Server für die Replikation eintragen. Alternativ lassen Sie das auf 1.
Die organisation entspricht der Organsisations ID, welche die Verwaltung der SIEM Cluster übernimmt. Wählen Sie dafür eine Organisation (wir empfehlen Ihre "Hauptorga").
Fügen Sie in der Konfiguration unter "api" noch
hinzu. Sodass Ihre Konfiguration wie folgt aussieht:
Wechseln Sie ins Enginsight Verzeichnis und starten Sie die setup.sh
Regulieren Sie den Speicherbedarf der Docker Logs, in dem Sie diese wie folgt auf 100 Mb beschränken:
Folgendes einfügen:
Docker Dienst neustarten:
Stellen Sie einen Access Key für den SIEM Management Server aus.
Der Loggernaut dient dazu die Logs entgegen zu nehmen und zu verarbeiten
Loggen Sie sich auf Ihrem SIEM Management Server ein
Installieren Sie den Loggernaut wie folgt:
Der Login mittels Username und Passwort erfolgt über Basic Authentification.
Wechseln Sie in die Enginsight Instanz und klicken Sie in den Reiter "SIEM". Die Oberfläche baut eine Verbindung zu den Servern auf, das kann einige Sekunden dauern.
Sollte Ihnen die Plattform anzeigen, dass sie keine Verbindung herstellen konnte, prüfen Sie bitte folgende Punkte:
Kann der APP Server den SIEM Management Server erreichen? Testen Sie dies mittels curl.
Hierbei muss Status Code 200 zurückkommen
Kann der SIEM Server den APP Server erreichen?
Wurden alle Firewall Freigaben aus dem Punkt Vorbereitung gesetzt?
Sollten Sie für Ihre SIEM URL ein selbstsigniertes Zertifiakt oder eine Windows PKI nutzen, müssen Sie das root Zertifikat zunächst auf dem SIEM Management sowie auf dem App Server trusten. Weiterhin benötigt es eine Anpassung in der docker-compose.yml des App Servers.
Zertifiakt trusten:
Kopieren Sie ihr root Zertifiakt auf dem SIEM Management nach /usr/local/share/ca-certificates/
und updaten Sie den CA Store
sudo cp foo.crt /usr/local/share/ca-certificates/foo.crt
sudo update-ca-certificates
ca.crt bitte durch den Namen Ihres Root Zertifiakts ersetzen.
Wiederholen Sie dies für den App Server
docker-compose.yml anpassen auf dem App Server:
Navigieren Sie in den Ordner /opt/enginsight/enterprise auf dem App Server und öffnen Sie die Datei mittels:
Ergänzen Sie unter enviroment und volumes folgendes:
Der Pfad /etc/nginx/cert.pem:/etc/ssl/cert.pem teilt sich wie folgt auf:
Links: Pfad der Chain auf dem Server Rechts: Pfad im Docker Container
Sie werden zu Beginn feststellen, dass das SIEM sich bereits mit Logs füllt. Diese kommen standardmäßig aus dem IDS, IPS, FIM, etc. Die Quellen können Sie unter SIEM -> Data Lake -> ngs.source einsehen.
Um die Logs, wie Syslog (Linux), EventLog (Windows) und Unified Logs (MacOs) zu erhalten, müssen Sie dies zunächst im Policy Manager erlauben. Navigieren Sie hierfür zu Hosts -> Policy Manager und erstellen Sie eine neue Policy namens SIEM.
Bestimmen Sie mittels Tags, welcher Host Logs schicken darf und aktivieren Sie unter Erweiterte Einstellungen "Auswertung von Systemlogs erlauben".
Navigieren Sie nun zurück in den Reiter SIEM. Unter Integrierte Kollektoren finden Sie die einzelnen Betriebssysteme. Hier können Sie oben rechts einen neuen Kollektor hinzufügen.
Vergeben Sie einen Namen für das jeweilige Betriebssystem was geloggt werden soll. Aktivieren Sie das Logging und ordnen Sie es einem Tag zu. Im Anschluss können Sie die Kanäle auswählen, über die die Logs gesammelt werden sollen.
Sie können an das SIEM auch Geräte anbinden, welche keinen Agent installiert haben. Hierfür definieren Sie einen Agent, welcher die Logs einsammeln soll. Navigieren Sie dafür in das SIEM -> Event Relais.
Wählen Sie einen Namen, mit der Sie eindeutig Ihren Kollektor identifizieren können. Aktivieren Sie erneut das Logging und definieren Sie unter Host einen Client oder Server, welcher die Logs von dem Gerät (z.B.) Firewall entgegen nehmen soll. Wählen Sie zudem das Format aus und entscheiden Sie, über welchen Port und welchem Protokoll die Daten gesendet werden sollen.
Es ist möglich mehrere Kollektoren zu konfigurieren. Das ist vor allem bei mehreren Netzen sinnvoll, um keine neuen Firewall Regeln konfigurieren zu müssen, da pro Netz ein Kollektor genutzt werden kann.
Updaten Sie die betroffene Komponenten Aktualisieren Sie die folgenden Komponenten auf die genannten Versionen:
ui-m1: <aktuelle Version>
server-m2: <aktuelle Version>
loggernaut-m47: <2.7.0>
Stellen Sie sicher, dass alle oben genannten Komponenten auf den neuesten Stand gebracht werden, bevor Sie mit den weiteren Schritten fortfahren.
Experimentellen ML-Modus im Loggernaut aktivieren
Öffnen Sie die Konfigurationsdatei unter /opt/enginsight/loggernaut/config.json
und fügen Sie die experimentellen Einstellungen hinzu:
Starten Sie anschließend den Loggernaut-Dienst neu:
Machine Learning Modul installieren
Docker installieren Führen Sie die folgenden Befehle aus, um Docker zu installieren:
Docker Compose anlegen
Erstellen Sie eine docker-compose.yml
-Datei mit folgendem Inhalt:
Optionaler Schritt:
Wenn das Machine Learning-Modul auf demselben Server wie der Loggernaut läuft und eine hohe CPU-Auslastung verursacht, können Sie die CPU-Shares des Containers verringern, um die Priorität anderer Prozesse zu erhöhen. Passen Sie dazu die docker-compose.yml
wie folgt an:
Anpassungen an der Nginx-Konfiguration des Management-Servers für WebSocket-Support
Bearbeiten Sie die Datei /etc/nginx/sites-available/default
und fügen Sie die folgenden Zeilen hinzu, um den WebSocket-Support zu aktivieren:
Speichern Sie die Datei und laden Sie Nginx neu, um die Änderungen zu übernehmen:
Container starten
Starten Sie den Docker-Container mit dem folgenden Befehl:
Damit ist das Machine-Learning-Modul erfolgreich installiert und konfiguriert.