So installierst du Matomo Web Analytics unter Debian 11

Matomo, früher bekannt als Piwik, ist eine kostenlose und quelloffene Webanalyse-Anwendung, die von einer Gemeinschaft von Entwicklern entwickelt wurde. Sie wird verwendet, um deine Website zu verfolgen und detaillierte Informationen über deine Website und ihre Besucher zu erhalten, einschließlich der verwendeten Suchmaschinen und Schlüsselwörter, der Sprache, die sie sprechen, welche Seiten sie mögen, die Dateien, die sie herunterladen und vieles mehr. Es bietet eine Vielzahl von Funktionen, darunter Google AdWords, Facebook Ads, Yahoo, Search Marketing, Tracking and Reporting API und Cost Per Click (CPC).

In diesem Tutorial zeige ich dir, wie du Matomo auf Debian 11 mit einem Apache2 Webserver und einem kostenlosen Let’s Encrypt SSL-Zertifikat installierst.

Voraussetzungen

  • Ein Server, auf dem Debian 11 läuft.
  • Ein gültiger Domainname, der auf die IP deines Servers zeigt.
  • Ein Root-Passwort ist auf dem Server konfiguriert.

Installiere Apache, MariaDB und PHP

Zuerst musst du den Apache Webserver, den MariaDB Datenbankserver, PHP und andere PHP-Erweiterungen auf deinem Server installieren. Du kannst sie alle installieren, indem du den folgenden Befehl ausführst:

apt-get install apache2 mariadb-server php libapache2-mod-php php-cli php-fpm php-fpm php-json php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath curl unzip -y

Nachdem du alle Pakete installiert hast, starte und aktiviere den Apache- und MariaDB-Dienst mit dem folgenden Befehl:

systemctl start apache2 mariadb
systemctl enable apache2 mariadb

Sobald du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.

Eine MariaDB-Datenbank für Matomo erstellen

Matomo verwendet MariaDB als Datenbank-Backend. Daher musst du eine Datenbank und einen Benutzer für Matomo erstellen.

Melde dich zunächst mit folgendem Befehl bei MariaDB an:

mysql

Sobald du eingeloggt bist, erstelle eine Datenbank und einen Benutzer mit dem folgenden Befehl:

MariaDB [(none)]> CREATE DATABASE matomodb;
MariaDB [(none)]> CREATE USER 'matomo'@'localhost' IDENTIFIED BY 'password';

Als Nächstes erteilst du der Matomo-Datenbank mit folgendem Befehl alle Berechtigungen:

MariaDB [(none)]> GRANT ALL ON matomodb.* TO 'matomo'@'localhost' WITH GRANT OPTION;

Lösche die Berechtigungen und verlasse die MariaDB-Shell mit folgendem Befehl:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Nachdem du die MariaDB-Datenbank konfiguriert hast, kannst du mit dem nächsten Schritt fortfahren.

Matomo herunterladen

Als Nächstes besuchst du die offizielle Matomo-Website und lädst die neueste Version von Matomo mit dem folgenden Befehl herunter:

wget http://builds.matomo.org/matomo-latest.zip

Sobald der Download abgeschlossen ist, entpackst du die heruntergeladene Datei mit dem folgenden Befehl:

unzip matomo-latest.zip

Als Nächstes verschiebst du das entpackte Verzeichnis in das Apache Web-Root-Verzeichnis:

mv matomo /var/www/html/matomo

Als Nächstes änderst du die Eigentums- und Zugriffsrechte für das Matomo-Verzeichnis:

chown -R www-data:www-data /var/www/html/matomo
chmod -R 755 /var/www/html/matomo

Sobald du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.

Apache für Matomo konfigurieren

Als Nächstes musst du eine Konfigurationsdatei für einen virtuellen Apache-Host erstellen, um Matomo im Internet zu hosten. Du kannst sie mit dem folgenden Befehl erstellen:

nano /etc/apache2/sites-available/matomo.conf

Füge die folgenden Zeilen ein:

<VirtualHost *:80>

ServerAdmin admin@example.com
ServerName matomo.example.com
DocumentRoot /var/www/html/matomo/

<Directory /var/www/html/matomo>
DirectoryIndex index.php
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>

<Files "console">
Options None
Require all denied
</Files>

<Directory /var/www/html/matomo/misc/user>
Options None
Require all granted
</Directory>

<Directory /var/www/html/matomo/misc>
Options None
Require all denied
</Directory>

<Directory /var/www/html/matomo/vendor>
Options None
Require all denied
</Directory>

ErrorLog ${APACHE_LOG_DIR}/matomo_error.log
CustomLog ${APACHE_LOG_DIR}/matomo_access.log combined


</VirtualHost>

Speichere und schließe die Datei, wenn du fertig bist. Aktiviere dann den virtuellen Matomo-Host und das Apache-Rewrite-Modul mit dem folgenden Befehl:

a2ensite matomo.conf
a2enmod rewrite

Starte anschließend den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Du kannst den Apache-Status auch mit dem folgenden Befehl überprüfen:

systemctl status apache2

Du erhältst die folgende Ausgabe:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2022-03-06 06:33:24 UTC; 5s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 55482 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 55486 (apache2)
      Tasks: 6 (limit: 4679)
     Memory: 12.4M
        CPU: 108ms
     CGroup: /system.slice/apache2.service
             ??55486 /usr/sbin/apache2 -k start
             ??55487 /usr/sbin/apache2 -k start
             ??55488 /usr/sbin/apache2 -k start
             ??55489 /usr/sbin/apache2 -k start
             ??55490 /usr/sbin/apache2 -k start
             ??55491 /usr/sbin/apache2 -k start

Mar 06 06:33:24 debian11 systemd[1]: Starting The Apache HTTP Server...
Mar 06 06:33:24 debian11 apachectl[55485]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 209>
Mar 06 06:33:24 debian11 systemd[1]: Started The Apache HTTP Server.

Zugriff auf die Matomo Web UI

Öffne nun deinen Webbrowser und rufe die Matomo-Weboberfläche über die URL http://matomo.example.com auf. Du wirst auf die folgende Seite weitergeleitet:

Matomo Web-Installer

Klicke auf die Schaltfläche Weiter. Du solltest die Seite zur Überprüfung der PHP-Konfiguration sehen:

PHP-Einstellung prüfen

Vergewissere dich, dass alle Konfigurationen in Ordnung sind und klicke dann auf die Schaltfläche WEITER. Du solltest die Seite zur Einrichtung der MariaDB-Datenbank sehen:

Datenbank einrichten

Gib deinen Datenbankserver, deinen Benutzernamen, deinen Datenbanknamen und dein Passwort ein und klicke dann auf die Schaltfläche WEITER. Du solltest die folgende Seite sehen:

Erstellen von Datenbanktabellen

Klicke auf die Schaltfläche NEXT. Du solltest die Seite zum Anlegen eines Superusers sehen:

Matomo-Superuser

Gib deinen Admin-Benutzernamen, dein Passwort und deine E-Mail-Adresse ein und klicke auf die Schaltfläche WEITER. Du solltest die Seite zur Einrichtung der Website sehen:

eine Website einrichten

Gib den Namen deiner Website, die URL und die Zeitzone ein und klicke auf die Schaltfläche WEITER. Du solltest die folgende Seite sehen:

Tracking-Code

Klicke auf die Schaltfläche NEXT. Du solltest die Seite zur Überprüfung der Konfiguration sehen:

Matomo Einstellungen

Klicke auf die Schaltfläche WEITER ZU MATOMO. Du solltest die Anmeldeseite von Matomo sehen:

Matomo Anmeldung

Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche ANMELDEN. Auf der folgenden Seite solltest du das Matomo-Dashboard sehen: Du kannst nun den Tracking-Code aus dem obigen Bild kopieren und auf jeder Seite deiner Website einfügen.

Matomo Dashboard

Matomo mit Let’s Encrypt SSL sichern

Als Nächstes musst du den Certbot-Client installieren, um das Let’s Encrypt SSL für deine Website zu installieren. Du kannst es mit dem folgenden Befehl installieren:

dnf install epel-release -y dnf install certbot python3-certbot-apache

Als Nächstes besorgst du dir ein SSL-Zertifikat für deine Let’s-Domain und installierst es mit dem folgenden Befehl:

certbot --apache -d matomo.example.com

Du wirst aufgefordert, deine E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu akzeptieren:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices)
 (Enter 'c' to cancel): hitjethva@gmail.com

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, to
share your email address with the Electronic Frontier Foundation, a founding
partner of the Let's Encrypt project and the non-profit organization that
develops Certbot? We'd like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Account registered.
Requesting a certificate for matomo.example.com
Performing the following challenges:
http-01 challenge for matomo.example.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/httpd/conf.d/matomo.conf
Redirecting all traffic on port 80 to ssl in /etc/httpd/conf.d/matomo.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://matomo.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Subscribe to the EFF mailing list (email: hitjethva@gmail.com).


IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/matomo.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/matomo.example.com/privkey.pem
   Your certificate will expire on 2022-05-09. To obtain a new or
   tweaked version of this certificate in the future, simply run
   certbot again with the "certonly" option. To non-interactively
   renew *all* of your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Fazit

Glückwunsch! Du hast Matomo erfolgreich auf Debian 11 installiert. Du kannst nun einen Tracking-Code zu deiner Website hinzufügen und sie über das Matomo-Dashboard überwachen. Wenn du noch Fragen hast, kannst du mich gerne fragen.

Das könnte dich auch interessieren …