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:
Klicke auf die Schaltfläche Weiter. Du solltest die Seite zur Überprüfung der PHP-Konfiguration sehen:
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:
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:
Klicke auf die Schaltfläche NEXT. Du solltest die Seite zum Anlegen eines Superusers sehen:
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:
Gib den Namen deiner Website, die URL und die Zeitzone ein und klicke auf die Schaltfläche WEITER. Du solltest die folgende Seite sehen:
Klicke auf die Schaltfläche NEXT. Du solltest die Seite zur Überprüfung der Konfiguration sehen:
Klicke auf die Schaltfläche WEITER ZU MATOMO. Du solltest die Anmeldeseite von Matomo sehen:
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 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.