So installierst du das Zeek Network Security Monitoring Tool auf Ubuntu 22.04
Zeek ist ein kostenloses, quelloffenes und weltweit führendes Sicherheitsüberwachungs-Tool, das als System zur Erkennung von Netzwerkeinbrüchen und zur Analyse des Netzwerkverkehrs eingesetzt wird. Sicherheitsexperten nutzen es, um verdächtige Signaturen zu erkennen und DNS-, HTTP- und FTP-Aktivitäten zu verfolgen. Zeek protokolliert die Netzwerkaktivitäten in einer separaten Datei. Diese Datei enthält alle wichtigen Informationen wie MIME-Typen, Serverantworten, DNS-Anfragen, HTTP-Sitzungen, angeforderte URIs, SSL-Zertifikate und mehr.
Diese Anleitung zeigt dir, wie du das Netzwerksicherheitstool Zeek unter Ubuntu 22.04 installierst.
Voraussetzungen
- Ein Server mit Ubuntu 22.04 und mindestens 2 GB RAM.
- Ein Root-Passwort ist auf dem Server eingerichtet.
Erste Schritte
Zuerst musst du alle Systempakete auf die aktuelle Version aktualisieren. Du kannst alle Pakete aktualisieren, indem du den folgenden Befehl ausführst.
apt update -y apt upgrade -y
Nachdem du alle Systempakete aktualisiert hast, installierst du einige benötigte Pakete mit dem folgenden Befehl.
apt install curl gnupg2 wget -y
Zeek-Repository hinzufügen
Standardmäßig ist das Zeek-Paket nicht im Standard-Repository von Ubuntu enthalten. Daher musst du das Zeek-Repository zur APT hinzufügen.
Lade zunächst den Zeek-GPG-Schlüssel herunter und füge ihn mit dem folgenden Befehl hinzu.
curl -fsSL https://download.opensuse.org/repositories/security:zeek/xUbuntu_22.04/Release.key | gpg --dearmor | tee /etc/apt/trusted.gpg.d/security_zeek.gpg
Als nächstes fügst du das Zeek-Repository mit dem folgenden Befehl hinzu.
echo 'deb http://download.opensuse.org/repositories/security:/zeek/xUbuntu_22.04/ /' | tee /etc/apt/sources.list.d/security:zeek.list
Aktualisiere den Cache des Repositorys mit dem folgenden Befehl.
apt update -y
Zeek installieren
Jetzt kannst du das Zeek-Tool installieren, indem du einfach den folgenden Befehl ausführst.
apt install zeek -y
Während der Installation wirst du aufgefordert, deinen Mailserver auszuwählen (siehe unten):
Wähle nur lokal und drücke die Eingabetaste. Du wirst aufgefordert, den Hostnamen deines Mailservers anzugeben.
Gib deinen Hostnamen ein und drücke die Eingabetaste, um die Installation abzuschließen.
Als nächstes musst du den Zeek-Installationspfad zu deiner Systemvariablen hinzufügen. Du kannst ihn mit dem folgenden Befehl hinzufügen.
echo "export PATH=$PATH:/opt/zeek/bin" >> ~/.bashrc
Als Nächstes aktivierst du die Systemvariable mit dem folgenden Befehl.
source ~/.bashrc
Jetzt kannst du die Zeek-Version mit folgendem Befehl überprüfen:
zeek --version
Du erhältst die folgende Ausgabe.
zeek version 5.1.1
Zeek Server konfigurieren
Bearbeite zunächst die Zeek-Netzwerkkonfigurationsdatei und definiere dein Netzwerk.
nano /opt/zeek/etc/networks.cfg
Hier sind die Standardnetzwerke. Du kannst am Ende der Datei weitere Netzwerke hinzufügen.
10.0.0.0/8 Private IP space 172.16.0.0/12 Private IP space 192.168.0.0/16 Private IP space
Speichere und schließe die Datei und bearbeite dann die Hauptkonfigurationsdatei von Zeek.
nano /opt/zeek/etc/node.cfg
Kommentiere die folgenden Zeilen:
#[zeek] #type=standalone #host=localhost #interface=eth0
Füge dann die folgenden Konfigurationen am Ende der Datei hinzu.
[zeek-logger] type=logger host=your-server-ip # [zeek-manager] type=manager host=your-server-ip # [zeek-proxy] type=proxy host=your-server-ip # [zeek-worker] type=worker host=your-server-ip interface=eth0 # [zeek-worker-lo] type=worker host=localhost interface=lo
Speichere die Datei und überprüfe die Zeek-Konfiguration mit dem folgenden Befehl.
zeekctl check
Du erhältst die folgende Ausgabe.
Hint: Run the zeekctl "deploy" command to get started. zeek-logger scripts are ok. zeek-manager scripts are ok. zeek-proxy scripts are ok. zeek-worker scripts are ok. zeek-worker-lo scripts are ok.
Jetzt kannst du Zeek mit dem folgenden Befehl einsetzen.
zeekctl deploy
Du erhältst die folgende Ausgabe.
checking configurations ... installing ... creating policy directories ... installing site policies ... generating cluster-layout.zeek ... generating local-networks.zeek ... generating zeekctl-config.zeek ... generating zeekctl-config.sh ... stopping ... stopping workers ... stopping proxy ... stopping manager ... stopping logger ... starting ... starting logger ... starting manager ... starting proxy ... starting workers ...
Zeek-Status testen
Zeek ist nun installiert und konfiguriert. Du kannst nun den Zeek-Status mit dem folgenden Befehl überprüfen.
zeekctl status
Du erhältst die folgende Ausgabe.
Name Type Host Status Pid Started zeek-logger logger 209.23.10.179 running 58935 19 Jan 05:37:02 zeek-manager manager 209.23.10.179 running 58985 19 Jan 05:37:03 zeek-proxy proxy 209.23.10.179 running 59035 19 Jan 05:37:05 zeek-worker worker 209.23.10.179 running 59107 19 Jan 05:37:06 zeek-worker-lo worker localhost running 59104 19 Jan 05:37:06
Zeek speichert seine Logs im Verzeichnis /opt/zeek/logs/current/. Du kannst alle Logdateien mit dem folgenden Befehl überprüfen.
ls -l /opt/zeek/logs/current/
Du erhältst die folgende Ausgabe.
total 72 -rw-r--r-- 1 root zeek 1735 Jan 19 05:37 broker.log -rw-r--r-- 1 root zeek 2166 Jan 19 05:37 cluster.log -rw-r--r-- 1 root zeek 187 Jan 19 05:37 packet_filter.log -rw-r--r-- 1 root zeek 6158 Jan 19 05:37 conn.log -rw-r--r-- 1 root zeek 31212 Jan 19 05:37 loaded_scripts.log -rw-r--r-- 1 root zeek 666 Jan 19 05:37 reporter.log -rw-r--r-- 1 root zeek 601 Jan 19 05:37 stats.log -rw-r--r-- 1 root zeek 0 Jan 19 05:37 stderr.log -rw-r--r-- 1 root zeek 204 Jan 19 05:37 stdout.log -rw-r--r-- 1 root zeek 266 Jan 19 05:37 telemetry.log -rw-r--r-- 1 root zeek 960 Jan 19 05:37 weird.log
Um das Log des Zeek-Clusters zu überprüfen, führe den folgenden Befehl aus.
tail /opt/zeek/logs/current/cluster.log
Du erhältst die folgende Ausgabe.
1674106627.672399 zeek-proxy got hello from zeek-worker-lo (62498247-62ce-5763-b201-a0f0e52b71f9) 1674106627.744144 zeek-proxy got hello from zeek-worker (0c8c7207-f1a1-540d-aee0-2b55cf76e69f) 1674106627.674594 zeek-manager got hello from zeek-worker-lo (62498247-62ce-5763-b201-a0f0e52b71f9) 1674106627.752439 zeek-manager got hello from zeek-worker (0c8c7207-f1a1-540d-aee0-2b55cf76e69f) 1674106627.672635 zeek-worker-lo got hello from zeek-proxy (b0734910-55c0-5aa5-b5fb-abdf7c083d3e) 1674106627.674358 zeek-worker-lo got hello from zeek-manager (b4a3890a-a470-5a1d-b2c7-fc48fd683ff9) 1674106627.666564 zeek-worker-lo got hello from zeek-logger (405e0618-3699-5b85-ac39-0af2743c0aab) 1674106627.708986 zeek-worker got hello from zeek-manager (b4a3890a-a470-5a1d-b2c7-fc48fd683ff9) 1674106627.699878 zeek-worker got hello from zeek-proxy (b0734910-55c0-5aa5-b5fb-abdf7c083d3e) 1674106627.706099 zeek-worker got hello from zeek-logger (405e0618-3699-5b85-ac39-0af2743c0aab)
Um das Zeek-Verbindungsprotokoll zu überprüfen, führe den folgenden Befehl aus.
tail /opt/zeek/logs/current/conn.log
Du erhältst die folgende Ausgabe.
1674106667.717311 Camkki2oVKl4J9dgpd 209.23.10.179 47762 209.23.10.179 56180 tcp - - - - OTH FF 0 CccC 0 0 0 0 - 1674106667.742276 CZ7aKU3nUfkjSSN5x6 209.23.10.179 56182 209.23.10.179 47762 tcp - - - - OTH FF 0 CcCc 0 0 0 0 - 1674106667.742332 Cd58V813jeHygHXQS2 209.23.10.179 56176 209.23.10.179 47762 tcp - - - - OTH FF 0 CcCc 0 0 0 0 - 1674106668.621860 CZlcm316EidXbp4aMj 209.23.10.179 41430 209.23.10.179 47761 tcp - - - - OTH FF 0 Cc 0 0 0 0 -
Fazit
Herzlichen Glückwunsch! Du hast das Zeek Security Monitoring Tool erfolgreich auf dem Ubuntu 22.04 Server installiert. Ich hoffe, dieser Beitrag hilft dir, die Architektur deines Netzwerks zu verstehen und bösartige Aktivitäten zu untersuchen. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.