Fathom ist eine selbst gehostete Open-Source-Webanalyseplattform, die einfache, nützliche Website-Statistiken bereitstellt, ohne die persönlichen Daten Ihrer Benutzer zu verfolgen oder zu speichern. Es ist eine sehr gute Alternative zu Google Analytics mit einer einfachen Weboberfläche, die für kleine und mittlere Unternehmen verwendet werden kann. Fathom gibt Ihnen die volle Kontrolle über Ihre Daten, ohne Lösungen von Drittanbietern zu verwenden. Fathom bietet Ihnen Top-Seiten, Top-Referrer, Absprungrate und durchschnittliche Verweildauer auf Ihrer Website.
In diesem Tutorial lernen wir, wie man Fathom Analytics auf einem Ubuntu 18.04-Server installiert.
Anforderungen
- Ein Server mit Ubuntu 18.04.
- Eine statische IP-Adresse 192.168.0.103 ist für Ihren Server eingerichtet.
- Ein Root-Passwort wird für Ihren Server eingerichtet.
Erste Schritte
Bevor Sie beginnen, müssen Sie Ihr System mit der neuesten Version aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:
apt-get update -y
apt-get upgrade -y
Sobald Ihr Server aktualisiert ist, starten Sie Ihren Server neu, um die Änderungen zu übernehmen.
Installieren Sie Nginx und MariaDB
Zuerst müssen Sie Nginx und MariaDB-Server auf Ihrem Server installieren. Sie können sie installieren, indem Sie den folgenden Befehl ausführen:
apt-get install nginx mariadb-server -y
Sobald beide Pakete installiert sind, starten Sie den MariaDB- und Nginx-Dienst und ermöglichen Sie ihnen, beim Booten mit dem folgenden Befehl zu starten:
systemctl start nginx
systemctl start mariadb
systemctl enable nginx
systemctl enable mariadb
MariaDB konfigurieren
Standardmäßig ist MariaDB nicht gesichert. Sie müssen es also sichern. Sie können dies tun, indem Sie das Skript mysql_secure_installation ausführen:
mysql_secure_installation
Dieses Skript ändert Ihr aktuelles Root-Passwort, entfernt anonyme Benutzer und verbietet Root-Login aus der Ferne, wie unten gezeigt:
Aktuelles Passwort für root eingeben (Eingabe für keins):Root-Passwort setzen? [J/n]:N Anonyme Benutzer entfernen? [Y/n]:Y Root-Anmeldung aus der Ferne verbieten? [J/n]:J Testdatenbank entfernen und darauf zugreifen? [J/n]:J Berechtigungstabellen jetzt neu laden? [J/n]:Ja
Sobald die MariaDB gesichert ist, melden Sie sich mit dem folgenden Befehl bei der MariaDB-Shell an:
mysql -u root -p
Geben Sie Ihr Root-Passwort ein und erstellen Sie dann mit dem folgenden Befehl eine Datenbank und einen Benutzer für fathom:
MariaDB [(keine)]> CREATE DATABASE fathom;
MariaDB [(keine)]> CREATE USER 'fathomuser'@'localhost' IDENTIFIED BY 'password';
Als nächstes erteilen Sie der Fathom-Datenbank mit dem folgenden Befehl alle Berechtigungen:
MariaDB [(none)]> GRANT ALL ON fathom.* TO 'fathomuser'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Löschen Sie als Nächstes die Berechtigungen und verlassen Sie die MariaDB-Shell mit dem folgenden Befehl:
MariaDB [(keine)]> FLUSH PRIVILEGES;
MariaDB [(keine)]>EXIT;
Installieren und konfigurieren Sie Fathom
Zuerst müssen Sie die neueste Version der Fathom-Binärdatei aus dem Git-Repository herunterladen. Sie können es mit dem folgenden Befehl herunterladen:
wget https://github.com/usefathom/fathom/releases/download/latest-development/fathom-linux-amd64
Sobald der Download abgeschlossen ist, verschieben Sie die heruntergeladene Binärdatei mit dem folgenden Befehl in das Verzeichnis /usr/local/bin/:
mv fathom-linux-amd64 /usr/local/bin/fathom
Geben Sie als Nächstes die ausführbare Berechtigung zum Ergründen der Binärdatei mit dem folgenden Befehl ein:
chmod 755 /usr/local/bin/fathom
Als nächstes müssen Sie die Fathom-Umgebung in Ihrem Home-Verzeichnis konfigurieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:
nano.env
Fügen Sie die folgenden Zeilen hinzu:
FATHOM_SERVER_ADDR=9000FATHOM_DEBUG=trueFATHOM_DATABASE_DRIVER="mysql"FATHOM_DATABASE_NAME="fathom"FATHOM_DATABASE_USER="fathomuser"FATHOM_DATABASE_PASSWORD="password"FATHOM_DATABASE_HOST="localhost"FATHOM_DATABASE_SSLMODE=""FATHOM_SECRET="random-secret-string"
Als nächstes müssen Sie ein Administratorkonto für Fathom erstellen. Sie können dies mit dem folgenden Befehl tun:
fathom --config=.env user add [email protected] [email protected]
Sie sollten die folgende Ausgabe sehen:
INFO[0000] Fathom 1.1.0 INFO[0000] Konfigurationsdatei:/root/.env INFO[0000] Mit MySQL-Datenbank verbunden:fathomuser:[email protected](localhost)/fathom?loc=Local&parseTime=true INFO [0000] Benutzer erstellt [email protected]
Starten Sie nun den Fathom-Server mit dem folgenden Befehl:
Fathom-Server
Sie sollten die folgende Ausgabe sehen:
INFO[0000] Fathom 1.1.0 INFO[0000] Konfigurationsdatei:/root/.env INFO[0000] Mit MySQL-Datenbank verbunden:fathomuser:[email protected](localhost)/fathom?loc=Local&parseTime=true INFO [0002] 11 Datenbankmigrationen durchgeführt! INFO[0002] Der Server lauscht jetzt auf :9000
Zugriff auf die Fathom-Weboberfläche
Fathom startet jetzt und überwacht Port 9000. Öffnen Sie Ihren Webbrowser und geben Sie die URL http://192.168.0.103:9000 ein . Sie werden auf die folgende Seite weitergeleitet:
Geben Sie nun Ihre Administrator-Anmeldeinformationen ein und klicken Sie auf das Zeichen in Taste. Sie sollten die folgende Seite sehen:
Geben Sie nun Ihren Site-Namen ein und klicken Sie auf Erstellen Website Taste. Sie sollten die folgende Seite sehen:
Beispielstatistik:
Fathom Systemd-Dienstdatei erstellen
Als Nächstes müssen Sie eine systemd-Dienstdatei für Fathom erstellen, um den Fathom-Dienst zu verwalten. Sie können dies mit dem folgenden Befehl tun:
nano /etc/systemd/system/fathom.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit]Description=Fathom-SerververwaltungsdiensteinheitRequires=network.targetAfter=network.target[Service]Type=simpleUser=rootRestart=alwaysRestartSec=3WorkingDirectory=/rootExecStart=/usr/local/bin/fathom server[Install]WantedBy =multi-user.target
Speichern und schließen Sie die Datei und aktivieren Sie dann den Fathom-Dienst mit dem folgenden Befehl:
systemctl daemon-reload
systemctl enable fathom
Als nächstes starten Sie den Fathom-Dienst mit dem folgenden Befehl:
systemctl start fathom
Sie können den Status des Fathom-Dienstes mit dem folgenden Befehl überprüfen:
systemctl status fathom
Sie sollten die folgende Ausgabe sehen:
Nginx als Reverse-Proxy konfigurieren
Standardmäßig überwacht Fathom Port 9000. Sie müssen also Nginx als Reverse-Proxy konfigurieren, um auf Fathom zuzugreifen, ohne die Portnummer anzugeben.
Sie können dies tun, indem Sie eine virtuelle Fathom-Hostdatei erstellen:
nano /etc/nginx/sites-available/fathom
Fügen Sie die folgenden Zeilen hinzu:
server {listen 80; hör zu [::]:80; Servername 192.168.0.103; Standort / { Proxy_Pass http://localhost:9000/; }}
Speichern und schließen Sie die Datei. Testen Sie dann Nginx mit dem folgenden Befehl auf Syntaxfehler:
nginx -t
Deaktivieren Sie als Nächstes die standardmäßige virtuelle Nginx-Hostdatei und aktivieren Sie die virtuelle Fathom-Hostdatei mit dem folgenden Befehl:
rm -rf /etc/nginx/sites-enabled/default
ln -s /etc/nginx/sites-available/fathom /etc/nginx/sites-enabled/
Als nächstes starten Sie den Nginx-Dienst mit dem folgenden Befehl neu:
systemctl startet nginx neu
Jetzt können Sie über die URL http://192.168.0.103.
auf Ihre Fathom-Weboberfläche zugreifen