So installieren Sie Matomo (Piwik) Web Analytics auf CentOS 8

Matomo, früher bekannt als Piwik, ist eine Open-Source-Analyseanwendung für das Linux-Betriebssystem. Sie ist Google Analytics sehr ähnlich und hilft Ihnen, den Standort der Benutzerbesuche zu verfolgen und anzuzeigen. Es wurde von einem Team internationaler Entwickler entwickelt und läuft auf einem PHP/MySQL-Webserver. Es bietet eine Vielzahl von Funktionen, einige davon sind unten aufgeführt:

  • Flexibilität, Verlässlichkeit und Sicherheit
  • Selbstgehostet, einfach und leicht zu bedienen
  • 100% Dateneigentum
  • GDPR-Konformität
  • Web- und Mobile-Analysen

In diesem Tutorial zeigen wir Ihnen, wie Sie die Piwik-Analytics-Anwendung auf einem CentOS 8-Server installieren und einrichten.

Voraussetzungen

  • Ein Server, auf dem CentOS 8 läuft.
  • Ein gültiger Domainname, der auf die IP Ihres Servers zeigt.
  • Ein Root-Passwort ist auf Ihrem Server konfiguriert.

LAMP-Server installieren

Piwik läuft auf einem LAMP-Server, daher müssen Sie den Apache, MariaDB, PHP und andere PHP-Erweiterungen auf Ihrem System installieren. Sie können sie alle mit dem folgenden Befehl installieren:

dnf install httpd mariadb-server php php-mysqlnd php-fpm unzip wget php-json php-dom php-gd php-mbstring -y

Sobald alle Pakete installiert sind, bearbeiten Sie die Datei php.ini und setzen Sie einige gewünschte Werte:

nano /etc/php.ini

Ändern Sie die folgenden Werte:

upload_max_filesize = 10M
post_max_size = 10M
max_execution_time = 300
max_input_time = 300
memory_limit = 256M

Speichern und schließen Sie die Datei und starten Sie dann den Apache- und MariaDB-Dienst und aktivieren Sie, dass sie beim Neustart des Systems gestartet werden:

systemctl start mariadb
systemctl start httpd
systemctl enable mariadb
systemctl enable httpd

Erstellen einer Datenbank für Piwik

Als nächstes müssen Sie eine Datenbank und einen Benutzer für Piwik anlegen. Melden Sie sich zunächst mit dem folgenden Befehl bei MariaDB an:

mysql

Nach der Anmeldung erstellen Sie eine Datenbank und einen Benutzer mit dem folgenden Befehl:

mysql> CREATE DATABASE matomo;
mysql> CREATE USER `matomo`@`localhost` IDENTIFIED BY 'password';

Erteilen Sie als Nächstes alle Rechte für die Datenbank mit dem folgenden Befehl:

mysql> GRANT ALL ON matomo.* TO `matomo`@`localhost`;

Als nächstes löschen Sie die Berechtigungen und verlassen MariaDB mit dem folgenden Befehl:

mysql> FLUSH PRIVILEGES;
mysql> EXIT;

Piwik installieren

Als nächstes müssen Sie die neueste Version von Piwik von der offiziellen Website herunterladen. Wechseln Sie zunächst mit dem folgenden Befehl in das Apache-Web-Root-Verzeichnis:

cd /var/www/html

Als nächstes laden Sie Piwik mit dem folgenden Befehl herunter:

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

Sobald der Download abgeschlossen ist, entpacken Sie die heruntergeladene Datei mit dem folgenden Befehl:

unzip matomo-latest.zip

Legen Sie als Nächstes mit folgendem Befehl die richtigen Berechtigungen und Eigentümer für das Web-Root fest:

chown -R apache:apache /var/www/html/matomo
chmod -R 775 /var/www/html/matomo

Sobald Sie damit fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Konfigurieren von SELinux und Firewall

Als nächstes müssen Sie die Ports 80 und 443 durch die Firewall zulassen. Sie können sie mit dem folgenden Befehl zulassen:

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https

Laden Sie anschließend die Firewalld neu, um die Änderungen zu übernehmen:

firewall-cmd --reload

Als nächstes müssen Sie auch SELinux für Piwik einrichten. Sie können es mit dem folgenden Befehl einrichten:

chcon -R -t httpd_sys_rw_content_t /var/www/html/matomo/
setsebool httpd_can_network_connect on -P

Wenn Sie damit fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Konfigurieren Sie den Apache für Piwik

Als nächstes müssen Sie den Apache-Webserver konfigurieren, um die Piwik-Website zu hosten. Dies können Sie tun, indem Sie eine neue Konfigurationsdatei für den virtuellen Apache-Host erstellen:

nano /etc/httpd/conf.d/piwik.conf

Fügen Sie die folgenden Zeilen hinzu:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/matomo"
ServerName piwik.example.com
<Directory "/var/www/html/matomo/">
Options MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
TransferLog /var/log/httpd/matomo_access.log
ErrorLog /var/log/httpd/matomo_error.log

</VirtualHost>

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den Apache-Webserver neu, um die Änderungen zu übernehmen:

systemctl restart httpd

Sie können nun den Status des Apache mit dem folgenden Befehl überprüfen:

systemctl status httpd

Sie sollten die folgende Ausgabe erhalten:

? httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/httpd.service.d
           ??php-fpm.conf
   Active: active (running) since Sun 2020-12-27 05:38:29 EST; 5s ago
     Docs: man:httpd.service(8)
 Main PID: 4228 (httpd)
   Status: "Started, listening on: port 80"
    Tasks: 213 (limit: 12523)
   Memory: 36.8M
   CGroup: /system.slice/httpd.service
           ??4228 /usr/sbin/httpd -DFOREGROUND
           ??4229 /usr/sbin/httpd -DFOREGROUND
           ??4230 /usr/sbin/httpd -DFOREGROUND
           ??4231 /usr/sbin/httpd -DFOREGROUND
           ??4232 /usr/sbin/httpd -DFOREGROUND

Dec 27 05:38:28 centos8 systemd[1]: Stopped The Apache HTTP Server.
Dec 27 05:38:28 centos8 systemd[1]: Starting The Apache HTTP Server...

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Zugriff auf die Piwik-Weboberfläche

Öffnen Sie nun Ihren Webbrowser und rufen Sie das Piwik-Webinterface über die URL http://piwik.example.com auf. Sie werden auf die folgende Seite weitergeleitet:

Piwik Installateur

Klicken Sie auf NEXT, Sie sollten die Systemprüfungsseite sehen:

System prüfen

Klicken Sie auf NEXT, Sie sollten die Seite zur Einrichtung der Datenbank sehen:

Einrichtung der Datenbank

Geben Sie Ihren Datenbank-Benutzernamen, den Datenbanknamen und das Kennwort ein und klicken Sie auf die Schaltfläche NEXT, um die folgende Seite anzuzeigen:

Erstellen von Datenbanktabellen

Klicken Sie auf NEXT, Sie sollten die Seite zum Anlegen des Admin-Benutzers sehen:

Admin-Benutzerkonto hinzufügen

Geben Sie Ihren Admin-Benutzernamen, Ihr Passwort und Ihre E-Mail-Adresse ein und klicken Sie dann auf die Schaltfläche WEITER. Sie sollten die Seite zur Einrichtung der Website sehen:

Einrichten einer Website

Geben Sie Ihre Website-Details ein und klicken Sie auf die Schaltfläche NEXT (WEITER ). Auf der folgenden Seite sollten Sie Ihren Tracking-Code sehen:

JS-Tracking-Code für Piwik

Log-Analytik

Klicken Sie auf NEXT. Sobald die Installation abgeschlossen ist. Sie sollten die folgende Seite sehen:

Installation beendet

Klicken Sie auf die Schaltfläche WEITER zu MATOMO. Sie sollten die MATOMO Login-Seite sehen:

Matomo Anmeldung

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 MATOMO-Dashboard sehen:

Statistik Dashboard

Sichern Sie Matomo mit Let’s Encrypt SSL

Als nächstes müssen Sie das Dienstprogramm Certbot auf Ihrem System installieren, um Let’s Encrypt SSL für Ihre Piwik-Website herunterzuladen und zu installieren.

Sie können den Certbot-Client mit dem folgenden Befehl installieren:

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto

Als nächstes erhalten und installieren Sie ein SSL-Zertifikat für Ihre Mantis-Website mit dem folgenden Befehl:

certbot-auto --apache -d piwik.example.com
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): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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 at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing 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 


Obtaining a new certificate
Performing the following challenges:
http-01 challenge for piwik.example.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/httpd/conf.d/piwik.conf

Als nächstes müssen Sie auswählen, ob der HTTP-Verkehr auf HTTPS umgeleitet werden soll oder nicht, wie unten gezeigt:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Geben Sie 2 ein und drücken Sie die Eingabetaste, um fortzufahren. Sobald die Installation abgeschlossen ist, sollten Sie die folgende Ausgabe sehen:

Redirecting all traffic on port 80 to ssl in /etc/httpd/conf.d/piwik.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://piwik.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=piwik.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/piwik.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/piwik.example.com/privkey.pem
   Your cert will expire on 2020-03-23. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot-auto
   again with the "certonly" option. To non-interactively renew *all*
   of your certificates, run "certbot-auto 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

Zu diesem Zeitpunkt ist Ihre Website mit Let’s Encrypt SSL gesichert.

Fazit Herzlichen Glückwunsch! Sie haben Piwik mit Apache und Let’s Encrypt SSL auf CentOS 8 erfolgreich installiert und eingerichtet. Sie können nun Ihren Tracking-Code in Ihre Website einfügen und beginnen, Ihre Website-Besucher über das Piwik-Dashboard zu überwachen. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.

Das könnte dich auch interessieren …