So installieren Sie das Arkime Full Packet Capture Tool unter Ubuntu 20.04
Arkime, auch bekannt als Moloch, ist ein quelloffenes und umfangreiches indiziertes Paketerfassungs- und Suchwerkzeug. Es speichert und exportiert alle erfassten Pakete im PCAP-Format. Sie können Wireshark oder andere PCAP-Ingesting-Tools verwenden, um die exportierte PCAP-Datei zu analysieren. Arkime verfügt über eine einfache und benutzerfreundliche Weboberfläche, die Sie zum Durchsuchen, Suchen und Exportieren von PCAP verwenden können. Es ist so konzipiert, dass es in mehreren Systemen eingesetzt werden kann und in der Lage ist, Gigabit pro Sekunde an Datenverkehr zu verarbeiten.
In diesem Beitrag zeigen wir Ihnen, wie Sie das Arkime Packet Capture Tool auf Ubuntu 20.04 installieren.
Voraussetzungen
- Ein Server, auf dem Ubuntu 20.04 läuft.
- Der Server ist mit einem Root-Passwort konfiguriert.
Erste Schritte
Bevor Sie beginnen, müssen Sie Ihre Systempakete auf die neueste Version aktualisieren. Sie können sie mit dem folgenden Befehl aktualisieren:
apt-get update -y
Sobald alle Pakete aktualisiert sind, installieren Sie die erforderlichen Abhängigkeiten mit dem folgenden Befehl:
apt-get install gnupg2 curl wget -y
Sobald alle Pakete installiert sind, können Sie mit dem nächsten Schritt fortfahren.
Elasticsearch installieren
Arkime verwendet Elasticsearch für die Indizierung und Suche. Daher muss Elasticsearch in Ihrem System installiert sein. Standardmäßig ist die neueste Version von Elasticsearch nicht im Standard-Repository von Ubuntu enthalten. Sie müssen also das Elasticsearch-Repository zu Ihrem System hinzufügen.
Fügen Sie zunächst den GPG-Schlüssel mit dem folgenden Befehl hinzu:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch --no-check-certificate | apt-key add -
Als Nächstes fügen Sie das Elasticsearch-Repository mit dem folgenden Befehl zum APT hinzu:
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-7.x.list
Als nächstes aktualisieren Sie das Repository und installieren das Elasticsearch-Paket mit dem folgenden Befehl:
apt-get update -y apt-get install elasticsearch -y
Sobald Elasticsearch installiert ist, bearbeiten Sie die Elasticsearch-Konfigurationsdatei und stellen Sie den Java-Speicher ein:
nano /etc/elasticsearch/jvm.options
Ändern Sie die folgenden Zeilen:
-Xms1g -Xmx1g
Speichern und schließen Sie die Datei und aktivieren Sie dann den Elasticsearch-Dienst zum Starten beim Systemneustart mit dem folgenden Befehl:
systemctl enable --now elasticsearch
Standardmäßig lauscht Elasticsearch auf Port 9200. Sie können dies mit dem folgenden Befehl überprüfen:
ss -antpl | grep 9200
Dann sehen Sie:
LISTEN 0 4096 [::ffff:127.0.0.1]:9200 *:* users:(("java",pid=9518,fd=272)) LISTEN 0 4096 [::1]:9200 [::]:* users:(("java",pid=9518,fd=271))
Sie können Elasticsearch auch mit dem folgenden Befehl überprüfen:
curl http://localhost:9200
Dies ergibt:
{ "name" : "ubuntu2004", "cluster_name" : "elasticsearch", "cluster_uuid" : "9g2B-tNaQl-rjuV32eCgpg", "version" : { "number" : "7.11.1", "build_flavor" : "default", "build_type" : "deb", "build_hash" : "ff17057114c2199c9c1bbecc727003a907c0db7a", "build_date" : "2021-02-15T13:44:09.394032Z", "build_snapshot" : false, "lucene_version" : "8.7.0", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "You Know, for Search" }
An diesem Punkt ist Elasticsearch installiert und läuft. Sie können nun mit dem nächsten Schritt fortfahren.
Installieren und konfigurieren Sie Arkime
Laden Sie zunächst die neueste Version von Arkime mit dem folgenden Befehl herunter:
wget https://s3.amazonaws.com/files.molo.ch/builds/ubuntu-20.04/moloch_2.7.1-1_amd64.deb
Sobald das Paket heruntergeladen ist, installieren Sie das heruntergeladene Paket mit dem folgenden Befehl:
apt install ./moloch_2.7.1-1_amd64.deb
Sobald Arkime installiert ist, konfigurieren Sie es mit dem folgenden Befehl:
/data/moloch/bin/Configure
Sie werden aufgefordert, die Netzwerkschnittstelle wie unten gezeigt anzugeben:
Found interfaces: lo;eth0;eth1 Semicolon ';' seperated list of interfaces to monitor [eth1] eth0
Geben Sie den Namen der Netzwerkschnittstelle ein und drücken Sie die Eingabetaste, um fortzufahren. Sobald die Konfiguration abgeschlossen ist, sollten Sie die folgende Ausgabe erhalten:
Install Elasticsearch server locally for demo, must have at least 3G of memory, NOT recommended for production use (yes or no) [no] no Elasticsearch server URL [http://localhost:9200] Password to encrypt S2S and other things [no-default] Password to encrypt S2S and other things [no-default] mypassword Moloch - Creating configuration files Installing systemd start files, use systemctl Moloch - Installing /etc/logrotate.d/moloch to rotate files after 7 days Moloch - Installing /etc/security/limits.d/99-moloch.conf to make core and memlock unlimited Download GEO files? (yes or no) [yes] yes 9) Visit http://MOLOCHHOST:8005 with your favorite browser. user: admin password: THEPASSWORD from step #6 If you want IP -> Geo/ASN to work, you need to setup a maxmind account and the geoipupdate program. See https://molo.ch/faq#maxmind Any configuration changes can be made to /data/moloch/etc/config.ini See https://molo.ch/faq#moloch-is-not-working for issues Additional information can be found at: * https://molo.ch/faq * https://molo.ch/settings
Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Initialisierung der Elasticsearch-Arkime-Konfiguration
Als nächstes müssen Sie die Elasticsearch-Arkime-Konfiguration initialisieren. Das können Sie mit dem folgenden Befehl tun:
/data/moloch/db/db.pl http://localhost:9200 init
Als Nächstes erstellen Sie ein Admin-Benutzerkonto für Arkime mit dem folgenden Befehl:
/data/moloch/bin/moloch_add_user.sh admin "Moloch SuperAdmin" mypassword --admin
Sobald Sie damit fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Starten und Verwalten der Arkime-Dienste
Arkime besteht aus drei Komponenten, Capture, Viewer und Elasticsearch. Sie müssen also für jede Komponente einen Dienst starten.
Nun den molochcapture- und den molochviewer-Dienst starten und aktivieren:
systemctl enable --now molochcapture systemctl enable --now molochviewer
dann überprüfen Sie den Staus wie folgt:
systemctl status molochcapture molochviewer
Ergebnis:
? molochcapture.service - Moloch Capture Loaded: loaded (/etc/systemd/system/molochcapture.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-03-01 11:40:08 UTC; 10s ago Main PID: 11313 (sh) Tasks: 7 (limit: 4691) Memory: 206.6M CGroup: /system.slice/molochcapture.service ??11313 /bin/sh -c /data/moloch/bin/moloch-capture -c /data/moloch/etc/config.ini >> /data/moloch/logs/capture.log 2>&1 ??11315 /data/moloch/bin/moloch-capture -c /data/moloch/etc/config.ini Mar 01 11:40:08 ubuntu2004 systemd[1]: Starting Moloch Capture... Mar 01 11:40:08 ubuntu2004 systemd[1]: Started Moloch Capture. ? molochviewer.service - Moloch Viewer Loaded: loaded (/etc/systemd/system/molochviewer.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-03-01 11:40:13 UTC; 5s ago Main PID: 11361 (sh) Tasks: 12 (limit: 4691) Memory: 51.9M CGroup: /system.slice/molochviewer.service ??11361 /bin/sh -c /data/moloch/bin/node viewer.js -c /data/moloch/etc/config.ini >> /data/moloch/logs/viewer.log 2>&1 ??11362 /data/moloch/bin/node viewer.js -c /data/moloch/etc/config.ini Mar 01 11:40:13 ubuntu2004 systemd[1]: Started Moloch Viewer.
Sie können nun das Viewer-Protokoll mit dem folgenden Befehl überprüfen:
tail -f /data/moloch/logs/viewer.log
Dies ergibt folgende Ausgabe:
Express server listening on port 8005 in development mode
Um das Capture-Protokoll zu überprüfen, führen Sie folgenden Befehl aus:
tail -f /data/moloch/logs/capture.log
Sie sollten die folgende Ausgabe sehen:
Mar 1 11:40:49 http.c:382 moloch_http_curlm_check_multi_info(): 1/30 ASYNC 201 http://localhost:9200/dstats/_doc/ubuntu2004-1209-5 806/154 0ms 51ms Mar 1 11:40:49 http.c:382 moloch_http_curlm_check_multi_info(): 1/30 ASYNC 200 http://localhost:9200/_bulk 3737/327 0ms 51ms Mar 1 11:40:50 http.c:382 moloch_http_curlm_check_multi_info(): 1/30 ASYNC 200 http://localhost:9200/_bulk 7246/451 0ms 51ms Mar 1 11:40:51 http.c:382 moloch_http_curlm_check_multi_info(): 1/30 ASYNC 200 http://localhost:9200/stats/_doc/ubuntu2004?version_type=external&version=22 805/149 0ms 51ms Mar 1 11:40:53 http.c:382 moloch_http_curlm_check_multi_info(): 1/30 ASYNC 200 http://localhost:9200/stats/_doc/ubuntu2004?version_type=external&version=23 805/149 0ms 52ms Mar 1 11:40:54 http.c:382 moloch_http_curlm_check_multi_info(): 1/30 ASYNC 201 http://localhost:9200/dstats/_doc/ubuntu2004-1210-5 806/154 0ms 51ms Mar 1 11:40:54 http.c:382 moloch_http_curlm_check_multi_info(): 1/30 ASYNC 200 http://localhost:9200/_bulk 2830/302 0ms 51ms
Zugriff auf die Arkime-Web-Oberfläche
Zu diesem Zeitpunkt ist Arkime gestartet und lauscht auf Port 8005. Überprüfen Sie dies mit dem folgenden Befehl:
ss -antpl | grep 8005
das ergibt die folgende Ausgabe:
LISTEN 0 511 *:8005 *:* users:(("node",pid=11362,fd=20))
Öffnen Sie nun Ihren Webbrowser und rufen Sie das Arkime-Webinterface über die URL http://your-server-ip:8005 auf. Sie werden aufgefordert, Ihren Admin-Benutzernamen und Ihr Passwort einzugeben, wie unten gezeigt:
Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche “ Sign In“. Auf der folgenden Seite sollten Sie das Arkime-Dashboard sehen:
Fazit
Herzlichen Glückwunsch! Sie haben das Arkime-Paketaufzeichnungstool erfolgreich auf dem Ubuntu 20.04-Server installiert und konfiguriert. Sie können nun Arkime auf weitere Funktionen untersuchen und mit der Paketaufzeichnung beginnen. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.