GoAccess ist ein kostenloses, quelloffenes Echtzeit-Webserver-Protokollanalysetool, das zum Analysieren und Anzeigen von Webserverprotokollen verwendet werden kann. GoAccess basiert auf der Befehlszeile und erstellt auch HTML-Berichte, die über einen Webbrowser angezeigt werden können. Es verfügt über mehrere Funktionen, darunter allgemeine Statistiken, Bandbreite, verschiedene Farbschemata, Top-Besucher, verweisende Websites und URLs, Betriebssysteme, Browser, Metriken pro virtuellem Host und vieles mehr.
In diesem Tutorial lernen wir, wie man GoAccess auf dem Ubuntu 16.04-Server installiert.
Anforderungen
- Ein Server mit Ubuntu 16.04.
- Ein Nicht-Root-Benutzer mit sudo-Berechtigungen.
Erste Schritte
Bevor Sie beginnen, wird empfohlen, Ihr System auf die neueste Version zu aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:
sudo apt-get update -y
sudo apt-get upgrade -y
Sobald Ihr System aktualisiert ist, starten Sie das System neu, um alle Updates zu übernehmen.
Erforderliche Abhängigkeiten installieren
GoAccess ist in der Programmiersprache C geschrieben, daher müssen Sie einige Abhängigkeiten installieren, die von GoAccess benötigt werden. Sie können alle mit dem folgenden Befehl installieren:
sudo apt-get -y install libncursesw5-dev gcc make libgeoip-dev libtokyocabinet-dev build-essential -y
Sobald alle Abhängigkeiten installiert sind, können Sie mit dem nächsten Schritt fortfahren.
Apache-Webserver installieren
GoAccess ist ein Webserver-Protokollanalysetool, daher müssen Sie Apache auf Ihrem System installieren. Sie können es mit dem folgenden Befehl installieren:
sudo apt-get install apache2 -y
Sobald der Apache installiert ist, starten Sie den Apache-Dienst und aktivieren Sie ihn so, dass er beim Booten startet:
sudo systemctl start apache2
sudo systemctl enable apache2
Installieren Sie GoAccess
Sie können GoAccess entweder aus der GoAccess-Quelle oder aus dem Ubuntu-Repository installieren.
Installieren Sie GoAccess von der Quelle
Zuerst müssen Sie die neueste Version von GoAccess von der offiziellen Website mit dem folgenden Befehl herunterladen:
wget http://tar.goaccess.io/goaccess-1.2.tar.gz
Als nächstes extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:
tar -xzvf goaccess-1.2.tar.gz
Wechseln Sie als Nächstes in das Verzeichnis goaccess-1.2 und kompilieren Sie GoAccess, indem Sie den folgenden Befehl ausführen:
cd goaccess-1.2
sudo ./configure --enable-utf8 --enable-geoip=legacy
sudo make
sudo make install
Installieren Sie GoAccess aus dem Repository
Zuerst müssen Sie das GoAccess-Repository zum APT hinzufügen. Sie können dies mit dem folgenden Befehl tun:
echo "deb http://deb.goaccess.io/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/goaccess.list
wget -O - https://deb.goaccess.io/gnugpg.key | sudo apt-key add -
Aktualisieren Sie als Nächstes das Repository mit dem folgenden Befehl:
sudo apt-get update -y
Installieren Sie schließlich GoAccess, indem Sie den folgenden Befehl ausführen:
sudo apt-get install goaccess -y
Verwenden Sie GoAccess
GoAccess ist jetzt installiert, es ist Zeit, es mit dem Apache-Webserver zu testen.
Öffnen Sie zunächst Ihren Apache-Webserver über die URL http://your-server-ip . Nach dem Zugriff auf den Webserver fügt Apache einige Protokolleinträge in die Standarddatei access_log ein.
Jetzt können Sie das Apache-Webserver-Protokoll mit dem folgenden Befehl von einem Terminal aus analysieren:
sudo goaccess /var/log/apache2/access.log --log-format=COMBINED
Sie sollten den Protokollbericht des Apache-Webservers in der folgenden Abbildung sehen:
Sie können einen HTML-Bericht auch mit dem folgenden Befehl generieren:
sudo goaccess /var/log/apache2/access.log --log-format=COMBINED -a -o /var/www/html/report.html
Sobald der Bericht generiert ist, öffnen Sie Ihren Webbrowser und geben Sie die URL http://your-server-ip/report.html ein . Sie sollten den von GoAccess generierten Bericht im folgenden Bild sehen:
Herzliche Glückwünsche! Sie haben GoAccess erfolgreich auf dem Ubuntu 16.04-Server installiert. Sie können das Protokoll des Apache-Webservers jetzt ganz einfach über eine Webschnittstelle und die Befehlszeilenschnittstelle analysieren.