Comment installer Matomo Web Analytics sur Debian 11

Matomo, anciennement connu sous le nom de Piwik, est une application d’analyse web gratuite et open-source développée par une communauté de développeurs. Elle est utilisée pour suivre ton site Web et donner des informations détaillées sur ton site et ses visiteurs, notamment les moteurs de recherche et les mots-clés qu’ils ont utilisés, la langue qu’ils parlent, les pages qu’ils aiment, les fichiers qu’ils téléchargent et bien d’autres choses encore. Il offre de nombreuses fonctionnalités, notamment : Google AdWords, Facebook Ads, Yahoo, Search Marketing, Tracking and Reporting API, et Cost Per Click (CPC).

Dans ce tutoriel, je vais te montrer comment installer Matomo sur Debian 11 avec un serveur Web Apache2 et un certificat SSL gratuit Let’s Encrypt.

Conditions préalables

  • Un serveur fonctionnant sous Debian 11.
  • Un nom de domaine valide pointé avec l’IP de ton serveur.
  • Un mot de passe root est configuré sur le serveur.

Installer Apache, MariaDB et PHP

Tout d’abord, tu dois installer le serveur Web Apache, le serveur de base de données MariaDB, PHP et d’autres extensions PHP sur ton serveur. Tu peux tous les installer en exécutant la commande suivante :

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

Après avoir installé tous les paquets, démarre et active le service Apache et MariaDB à l’aide de la commande suivante :

systemctl start apache2 mariadb
systemctl enable apache2 mariadb

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Crée une base de données MariaDB pour Matomo

Matomo utilise une base de données MariaDB comme backend. Tu vas donc devoir créer une base de données et un utilisateur pour Matomo.

Tout d’abord, connecte-toi à MariaDB avec la commande suivante :

mysql

Une fois que tu es connecté, crée une base de données et un utilisateur avec la commande suivante :

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

Ensuite, accorde tous les privilèges à la base de données Matomo avec la commande suivante :

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

Ensuite, vide les privilèges et quitte le shell MariaDB avec la commande suivante :

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

Après avoir configuré la base de données MariaDB, tu peux passer à l’étape suivante.

Télécharge Matomo

Ensuite, visite le site officiel de Matomo et télécharge la dernière version de Matomo avec la commande suivante :

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

Une fois le téléchargement terminé, décompresse le fichier téléchargé avec la commande suivante :

unzip matomo-latest.zip

Ensuite, déplace le répertoire extrait dans le répertoire racine du site Web d’Apache :

mv matomo /var/www/html/matomo

Ensuite, modifie la propriété et la permission du répertoire Matomo :

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

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Configurer Apache pour Matomo

Ensuite, tu devras créer un fichier de configuration d’hôte virtuel Apache pour héberger Matomo sur Internet. Tu peux le créer avec la commande suivante :

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

Ajoute les lignes suivantes :

<VirtualHost *:80>

ServerAdmin [email protected]
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>

Sauvegarde et ferme le fichier lorsque tu as terminé puis active l’hôte virtuel Matomo et le module de réécriture Apache avec la commande suivante :

a2ensite matomo.conf
a2enmod rewrite

Ensuite, redémarre le service Apache pour appliquer les modifications :

systemctl restart apache2

Tu peux aussi vérifier l’état d’Apache avec la commande suivante :

systemctl status apache2

Tu obtiendras la sortie suivante :

? 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.

Accède à l’interface Web de Matomo

Maintenant, ouvre ton navigateur Web et accède à l’interface Web de Matomo en utilisant l’URL http://matomo.example.com. Tu seras redirigé vers la page suivante :

Installateur web de Matomo

Clique sur le bouton Suivant. Tu devrais voir la page de vérification de la configuration PHP :

Vérification des paramètres PHP

Assure-toi que toutes les configurations sont correctes puis clique sur le bouton SUIVANT. Tu devrais voir la page de configuration de la base de données MariaDB :

Configuration de la base de données

Indique ton serveur de base de données, ton nom d’utilisateur, ton nom de base de données et ton mot de passe, puis clique sur le bouton SUIVANT. Tu devrais voir la page suivante :

Créer des tables de base de données

Clique sur le bouton SUIVANT. Tu devrais voir la page de création du super utilisateur :

Super utilisateur de Matomo

Indique ton nom d’utilisateur admin, ton mot de passe, ton e-mail, puis clique sur le bouton SUIVANT. Tu devrais voir la page de création de site Web :

Crée un site Web

Indique le nom de ton site Web, l’URL, le fuseau horaire, et clique sur le bouton SUIVANT. Tu devrais voir la page suivante :

Code de suivi

Clique sur le bouton SUIVANT. Tu devrais voir la page de vérification de la configuration :

Paramètres de Matomo

Clique sur le bouton CONTINUER À MATOMO. Tu devrais voir la page de connexion à Matomo :

Connexion à Matomo

Indique ton nom d’utilisateur admin, ton mot de passe et clique sur le bouton SIGN IN. Tu devrais voir le tableau de bord Matomo sur la page suivante : Tu peux maintenant copier le code de suivi présenté dans l’image ci-dessus et le coller sur chaque page de ton site Web.

Tableau de bord Matomo

Sécurise Matomo avec Let’s Encrypt SSL

Ensuite, tu devras installer le client Certbot pour installer le SSL Let’s Encrypt pour ton site Web. Tu peux l’installer avec la commande suivante :

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

Ensuite, obtiens et installe un certificat SSL pour ton domaine lets avec la commande suivante :

certbot --apache -d matomo.example.com

Il te sera demandé de fournir ton adresse e-mail et d’accepter les conditions de service :

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. 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: [email protected]).


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

Conclusion

Félicitations ! Tu as réussi à installer Matomo sur Debian 11. Tu peux maintenant ajouter un code de suivi à ton site Web et commencer à le surveiller depuis le tableau de bord de Matomo. N’hésite pas à me demander si tu as des questions.

Vous aimerez aussi...