Matomo dříve známý jako Piwik je analytická aplikace s otevřeným zdrojovým kódem pro operační systém Linux. Je to velmi podobné službě Google Analytics, která vám pomáhá sledovat a zobrazovat polohu návštěv uživatelů. Byl vyvinut týmem mezinárodních vývojářů, který běží na webovém serveru PHP/MySQL. Nabízí mnoho funkcí, některé z nich jsou uvedeny níže:
- Flexibilita, spolehlivost a bezpečnost
- Samohoštěný, jednoduchý a snadno použitelný
- 100% vlastnictví dat
- Soulad s GDPR
- Webová a mobilní analytika
V tomto tutoriálu vám ukážeme, jak nainstalovat a nastavit analytickou aplikaci Piwik na serveru CentOS 8.
Předpoklady
- Server se systémem CentOS 8.
- Platný název domény s adresou IP vašeho serveru.
- Na vašem serveru je nakonfigurováno heslo uživatele root.
Instalovat LAMP Server
Piwik běží na serveru LAMP, takže do systému budete muset nainstalovat rozšíření Apache, MariaDB, PHP a další PHP. Všechny je můžete nainstalovat pomocí následujícího příkazu:
dnf install httpd mariadb-server php php-mysqlnd php-fpm unzip wget php-json php-dom php-gd php-mbstring -y
Jakmile jsou všechny balíčky nainstalovány, upravte soubor php.ini a nastavte některé požadované hodnoty:
nano /etc/php.ini
Změňte následující hodnoty:
upload_max_filesize = 10M post_max_size = 10M max_execution_time = 300 max_input_time = 300 memory_limit = 256M
Uložte a zavřete soubor, poté spusťte službu Apache a MariaDB a povolte jim spuštění při restartu systému:
systemctl start mariadb
systemctl start httpd
systemctl enable mariadb
systemctl enable httpd
Vytvořit databázi pro Piwik
Dále budete muset vytvořit databázi a uživatele pro Piwik. Nejprve se přihlaste do MariaDB pomocí následujícího příkazu:
mysql
Po přihlášení vytvořte databázi a uživatele pomocí následujícího příkazu:
mysql> CREATE DATABASE matomo;
mysql> CREATE USER `matomo`@`localhost` IDENTIFIED BY 'password';
Dále udělte všechna oprávnění databázi pomocí následujícího příkazu:
mysql> GRANT ALL ON matomo.* TO `matomo`@`localhost`;
Dále vyprázdněte oprávnění a ukončete MariaDB pomocí následujícího příkazu:
mysql> FLUSH PRIVILEGES;
mysql> EXIT;
Instalovat Piwik
Dále si budete muset stáhnout nejnovější verzi Piwik z jejich oficiálních stránek. Nejprve změňte adresář na webový kořen Apache pomocí následujícího příkazu:
cd /var/www/html
Dále si stáhněte Piwik pomocí následujícího příkazu:
wget https://builds.matomo.org/matomo-latest.zip
Po dokončení stahování rozbalte stažený soubor pomocí následujícího příkazu:
unzip matomo-latest.zip
Dále nastavte správná oprávnění a vlastnictví pro web root pomocí následujícího příkazu:
chown -R apache:apache /var/www/html/matomo
chmod -R 775 /var/www/html/matomo
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Konfigurovat SELinux a bránu firewall
Dále budete muset povolit porty 80 a 443 přes bránu firewall. Můžete je povolit pomocí následujícího příkazu:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
Poté znovu načtěte firewall, aby se změny projevily:
firewall-cmd --reload
Dále budete také muset nastavit SELinux pro Piwik. Můžete jej nastavit pomocí následujícího příkazu:
chcon -R -t httpd_sys_rw_content_t /var/www/html/matomo/
setsebool httpd_can_network_connect on -P
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Konfigurovat Apache pro Piwik
Dále budete muset nakonfigurovat webový server Apache, aby hostoval web Piwik. Můžete to udělat vytvořením nového konfiguračního souboru virtuálního hostitele Apache:
nano /etc/httpd/conf.d/piwik.conf
Přidejte následující řádky:
<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>
Po dokončení uložte a zavřete soubor. Poté restartujte webový server Apache, aby se změny projevily:
systemctl restart httpd
Nyní můžete zkontrolovat stav Apache pomocí následujícího příkazu:
systemctl status httpd
Měli byste získat následující výstup:
? 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...
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Přístup k webovému rozhraní Piwik
Nyní otevřete webový prohlížeč a přejděte do webového rozhraní Piwik pomocí adresy URL http://piwik.example.com . Budete přesměrováni na následující stránku:
Klikněte na DALŠÍ , měli byste vidět stránku kontroly systému:
Klikněte na DALŠÍ , měli byste vidět stránku nastavení databáze:
Zadejte uživatelské jméno databáze, název databáze, heslo a klikněte na DALŠÍ , měli byste vidět následující stránku:
Klikněte na DALŠÍ , měli byste vidět stránku vytvoření uživatele správce:
Zadejte své uživatelské jméno správce, heslo, e-mail a poté klikněte na DALŠÍ . Měli byste vidět stránku nastavení webu:
Zadejte podrobnosti o svém webu a klikněte na DALŠÍ . Váš sledovací kód byste měli vidět na následující stránce:
Klikněte na DALŠÍ . Po dokončení instalace. Měli byste vidět následující stránku:
Klikněte na POKRAČOVAT NA MATOMO . Měli byste vidět přihlašovací stránku MATOMO:
Zadejte své administrátorské uživatelské jméno, heslo a klikněte na PŘIHLÁSIT SE . Na následující stránce byste měli vidět řídicí panel MATOMO:
Zabezpečte Matomo pomocí Let's Encrypt SSL
Dále budete muset do svého systému nainstalovat nástroj Certbot, abyste si mohli stáhnout a nainstalovat Let's Encrypt SSL pro svůj web Piwik.
Klienta Certbot můžete nainstalovat pomocí následujícího příkazu:
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
Dále získejte a nainstalujte certifikát SSL pro svůj web Mantis pomocí následujícího příkazu:
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
Dále budete muset zvolit, zda chcete přesměrovat provoz HTTP na HTTPS, jak je znázorněno níže:
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
Zadejte 2 a pokračujte stisknutím klávesy Enter. Po dokončení instalace byste měli vidět následující výstup:
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
V tuto chvíli je váš web zabezpečen pomocí Let's Encrypt SSL.
Závěr Gratulujeme! úspěšně jste nainstalovali a nastavili Piwik s Apache a Let's Encrypt SSL na CentOS 8. Nyní můžete přidat svůj sledovací kód na svůj web a začít sledovat návštěvníky webu z řídicího panelu Piwik. Neváhejte se mě zeptat, pokud máte nějaké otázky.