Matomo, ранее Piwik, – это бесплатное программное обеспечение с открытым исходным кодом для веб-аналитики, которое может отслеживать посещения сайта и отображать отчеты для анализа данных и аудитории. Matomo лицензируется по лицензии GPL. Она написана на PHP и может работать с сервером баз данных MySQL или MariaDB. Matomo предоставляет отчеты для отслеживания пользователей на ваших сайтах. Они включают в себя поисковую систему реферера и ключевые слова, языки, посещения страниц, как посетители файлов, загрузки и многое другое. Matomo становится все более популярным в качестве альтернативы аналитическим сервисам, таким как Google Analytics.
В этом руководстве вы настроите и защитите веб-аналитику с помощью Matomo на сервере Ubuntu 22.04. Вы установите веб-аналитику Matomo с PHP 8.1, веб-сервером Apache2 и базой данных MariaDB и защитите развертывание с помощью SSL/TLS сертификатов через Certbot и Letsencrypt. После завершения этого руководства вы сможете отслеживать и контролировать трафик на ваших сайтах, а также получите подробные результаты отслеживания.
Установка и настройка сервера MariaDB
Matomo – это веб-аналитика с открытым исходным кодом, использующая MySQL или MariaDB в качестве бэкенда базы данных. На момент написания этой статьи, Matomo требовал как минимум MySQL Server v8 или MariaDB v10.x. В этом руководстве вы установите и будете использовать MariaDB в качестве базы данных для веб-аналитики Matomo.
На первом этапе вы установите сервер MariaDB, настроите развертывание MariaDB, создадите новую базу данных MariaDB и пользователя.
Перед тем, как начать, выполните приведенную ниже команду apt для обновления и обновления индекса пакетов.
sudo apt update
Теперь установите сервер MariaDB с помощью приведенной ниже команды apt. Когда появится запрос, введите y и нажмите ENTER, чтобы продолжить.
sudo apt install mariadb-server
![](https://itshaman.ru/images/x2809_800.webp.pagespeed.ic.KK2qNH8jsV.webp)
После установки сервера MariaDB запустите приведенную ниже команду systemctl, чтобы проверить и убедиться, что сервер MariaDB работает.
sudo systemctl is-enabled mariadbsudo systemctl status mariadb
Вы должны получить результат, подобный этому – Сервер MariaDB включен и запущен по умолчанию. Кроме того, сервер MariaDB будет запущен автоматически при загрузке.
![](https://itshaman.ru/images/x2810_800.webp.pagespeed.ic.b02iJWog67.webp)
Следующим шагом будет защита установки сервера MariaDB с помощью команды „mariadb-secure-installation“, которая поставляется в пакете сервера MariaDB.
Выполните следующую команду для защиты установки сервера MariaDB.
sudo mariadb-secure-installation
Вам будет предложено выполнить следующие конфигурации MariaDB:
- Переключить локальную аутентификацию на unix_socket? Введите n.
- Установить новый пароль корня MariaDB? Введите y для подтверждения, затем введите новый пароль для развертывания сервера MariaDB.
- Удалить анонимного пользователя? Введите y для подтверждения.
- Удалить тест базы данных по умолчанию из развертывания? Введите y для подтверждения.
- Запретить вход в систему MariaDB root при удаленных подключениях? Введите y для подтверждения.
- Перезагрузить привилегии таблиц и применить изменения? Введите y и нажмите ENTER.
Теперь развертывание сервера MariaDB должно быть безопасным, и вы добавили пароль для корневого пользователя MariaDB.
Следующее, вы создадите новую базу данных MariaDB и пользователя для установки Matomo через оболочку MariaDB.
Выполните следующую команду mariadb для входа в оболочку MariaDB через корневого пользователя MariaDB. Когда вас попросят ввести пароль, введите ваш пароль корня MariaDB.
sudo mariadb -u root -p
Теперь выполните следующие запросы для создания новой базы данных MariaDB и пользователя. В этом примере вы создадите базу данных и пользователя „matomo“ для установки Matomo. Также не забудьте заменить пароль по умолчанию в следующем запросе.
CREATE DATABASE matomo;CREATE USER 'matomo'@'localhost' IDENTIFIED BY 'p4ssw0rddb'; GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, INDEX, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON matomo.* TO 'matomo'@'localhost'; FLUSH PRIVILEGES;
![](https://itshaman.ru/images/x2811_800.webp.pagespeed.ic.R59kdXj2cg.webp)
Далее выполните следующий запрос, чтобы проверить список привилегий пользователя.
SHOW GRANTS FOR 'matomo'@'localhost';quit
Вы должны получить результат, подобный этому – Пользователь MariaDB имеет все привилегии для доступа к базе данных „matomo“.
![](https://itshaman.ru/images/x2812_800.webp.pagespeed.ic.bOPaIOgPqf.webp)
В этом разделе вы установили сервер MariaDB, обеспечили безопасность установки MariaDB с помощью команды „mariadb-secure-installation“ и создали новую базу данных и пользователя для Matomo. Далее вы установите веб-сервер Apache2 и PHP 8.x.
Установка веб-сервера Apache2 и PHP 8
Matomo – это веб-аналитика с открытым исходным кодом, написанная на PHP. Для установки последней версии Matomo полностью поддерживается PHP 8.x. Также Matomo может работать с веб-серверами Apache2 и Nginx.
В этом шаге вы установите веб-сервер Apache2 и PHP 8.1, настроите установку PHP, затем проверите службу Apache2 и версию PHP.
Репозиторий Ubuntu по умолчанию предоставляет пакеты Apache2 и PHP. Репозиторий Ubuntu 22.04 предоставляет последнюю версию PHP PHP8.1, которая полностью поддерживается для установки Matomo.
Выполните следующую команду apt для установки пакетов Apache2 и PHP 8.1.
sudo apt install apache2 php php-cli libapache2-mod-php php-common php-curl php-gd php-mbstring php-mysql php-xml php-intl php-zip wget unzip
При появлении запроса введите y для подтверждения и нажмите ENTER для продолжения.
![](https://itshaman.ru/images/x2813_800.webp.pagespeed.ic.UWMJPe1XlF.webp)
После установки Apache2 и PHP выполните следующую команду systemctl для проверки службы Apache2 и убедитесь, что служба запущена.
sudo systemctl is-enabled apache2sudo systemctl status apache2
Вы получите следующее сообщение – Служба Apache2 включена и будет запущена автоматически при загрузке. И статус службы Apache2 запущен.
![](https://itshaman.ru/images/x2814_800.webp.pagespeed.ic.cfHYlsc2or.webp)
Следующим шагом откройте файл „php.ini“ для Apache2 с помощью следующей команды редактора nano.
sudo nano /etc/php/8.1/apache2/php.ini
Измените стандартную конфигурацию php.ini следующими строками. Отрегулируйте значения date.timezone и memory_limit в соответствии с вашим текущим окружением.
date.timezone = Europe/Moscow memory_limit = 256M upload_max_filesize = 16M max_execution_time = 300
Сохраните и выйдите из файла после завершения.
Теперь выполните следующую команду systemctl, чтобы перезапустить службу Apache2 и применить изменения.
sudo systemctl restart apache2
Веб-сервер Apache2 теперь должен работать с новым конфигурационным файлом php.ini.
После этого выполните следующую команду php, чтобы проверить версию PHP, установленную в вашей системе. Затем проверьте список включенных расширений PHP.
sudo php --versionsudo php -m
Вы должны получить результат, подобный этому – PHP 8.1 установлен в вашей системе Ubuntu. Также убедитесь, что расширения PHP, необходимые для Matomo, включены.
![](https://itshaman.ru/images/x2815_800.webp.pagespeed.ic.DUt3ahyFPE.webp)
Итак, вы закончили установку зависимостей для веб-аналитики Matomo, включая сервер MariaDB, веб-сервер Apache2 и PHP 8.1.
Загрузка исходного кода Matomo
Вы загрузите исходный код Matomo и установите соответствующие разрешения для каталога установки Matomo.
Смените текущий рабочий каталог на /var/www/ и загрузите исходный код Matomo с помощью команды wget.
cd /var/www/ wget https://builds.matomo.org/matomo.zip
После загрузки исходного кода Matomo, извлеките его с помощью команды unzip ниже. И вы должны получить новый каталог matomo в вашем текущем рабочем каталоге.
unzip matomo.zip
После этого, ваш каталог установки Matomo должен быть /var/www/matomo.
Выполните следующую команду, чтобы изменить права на каталог установки Matomo /var/www/matomo на пользователя и группу www-data.
sudo chown -R www-data:www-data /var/www/matomo
После того, как вы настроили каталог установки Matomo и загрузили исходный код Matomo. Далее вы создадите новую конфигурацию виртуального хоста, который будет использоваться для запуска веб-аналитики Matomo.
Настройка виртуального хоста Matomo
Перед началом работы убедитесь, что доменное имя указывает на IP-адрес вашего сервера. В данном примере для установки Matomo используется поддомен analytics.itshaman.ru.
Создайте новый файл виртуального хоста Apache2 /etc/apache2/sites-available/matomo.conf с помощью приведенной ниже команды редактора nano.
sudo nano /etc/apache2/sites-available/matomo.conf
Добавьте следующие строки в файл и убедитесь, что имя домена изменено на ваш домен.
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName analytics.itshaman.ru DocumentRoot /var/www/matomo/ <Directory /var/www/matomo> DirectoryIndex index.php Options FollowSymLinks AllowOverride All Require all granted </Directory> <Files "console"> Options None Require all denied </Files> <Directory /var/www/matomo/misc/user> Options None Require all granted </Directory> <Directory /var/www/matomo/misc> Options None Require all denied </Directory> <Directory /var/www/matomo/vendor> Options None Require all denied </Directory> ErrorLog ${APACHE_LOG_DIR}/matomo_error.log CustomLog ${APACHE_LOG_DIR}/matomo_access.log combined </VirtualHost>
Сохраните файл и выйдите из редактора, когда закончите.
Затем выполните приведенную ниже команду для активации новой конфигурации виртуального хоста matomo.conf. Затем проверьте конфигурацию Apache2, чтобы убедиться в отсутствии ошибок.
sudo a2ensite matomo.confsudo apachectl configtest
Вы должны получить результат типа Syntax OK, если у вас правильная конфигурация Apache2.
![](https://itshaman.ru/images/x2816_800.webp.pagespeed.ic.V84qORwaDi.webp)
В заключение, запустите нижеприведенную командную утилиту systemctl для перезапуска службы Apache2 и применения изменений.
sudo systemctl restart apache2
На этом вы закончили конфигурирование виртуального хоста Apache2 для веб-аналитики Matomo. Это означает, что теперь ваш Maomo доступен извне сети, и вы можете получить к нему доступ через веб-браузер. Но, это все еще использует небезопасные HTTP соединения.
Обеспечение безопасности Matomo с помощью SSL/TLS через Certbot и Letsencrypt
В этом шаге вы установите инструмент и плагин Certbot для веб-сервера Apache2. Затем вы сгенерируете новые SSL/TLS сертификаты для веб-аналитики Matomo.
Перед тем, как начать, убедитесь, что ваше доменное имя указано на IP-адрес вашего сервера. Также вам нужен адрес электронной почты, который будет использоваться для регистрации на Letsencrypt.
Сейчас выполните приведенную ниже команду apt для установки инструмента Certbot и плагина Certbot для веб-сервера Apache2.
sudo apt install certbot python3-certbot-apache2
Введите y, когда появится запрос, и нажмите ENTER, чтобы продолжить.
![](https://itshaman.ru/images/x2817_800.webp.pagespeed.ic.aKQjVQsn17.webp)
Следующим образом выполните приведенную ниже команду certbot для генерации SSL/TLS сертификатов для вашего доменного имени. Убедитесь, что вы изменили имя домена и адрес электронной почты в следующей команде.
sudo certbot --apache2 --agree-tos --redirect --hsts --staple-ocsp --email webmaster.itshaman.ru -d analytics.itshaman.ru.
После завершения процесса, ваша веб-аналитика Matomo теперь должна работать с включенным защищенным HTTPS поверх вашего веб-сервера Apache. Кроме того, у вас настроена автопереадресация с HTTP на HTTPS и включена скоба OSCP.
Установка Matomo Web Analytics
Откройте веб-браузер и посетите доменное имя вашей установки matomo (т.е.: https://analytics.itshaman.ru). У вас должна появиться страница приветствия Matomo, как показано на скриншоте ниже.
Нажмите Next для начала установки.
![](https://itshaman.ru/images/x2818_800.webp.pagespeed.ic.SFtF0nHStf.webp)
Сейчас программа установки Matomo будет проверять окружение сервера для установки. Убедитесь, что все требования и настройки отмечены зеленым цветом, как показано ниже.
![](https://itshaman.ru/images/x2819_800.webp.pagespeed.ic.s0SwDHNir1.webp)
Также, вы должны убедиться, что основные требования соответствуют системным требованиям Matomo.
![](https://itshaman.ru/images/x2820_800.webp.pagespeed.ic.hf2LgcEF7C.webp)
Нажмите Next для продолжения.
Теперь вы установите детали базы данных MariaDB для вашей веб-аналитики Matomo. Убедитесь, что ввели правильное имя пользователя и пароль базы данных. Затем снова нажмите Next.
![](https://itshaman.ru/images/x2821_800.webp.pagespeed.ic.F7_ivWyBZY.webp)
Программа установки matomo web должна автоматически создать таблицы, если данные вашей базы данных верны.
Нажмите Next для продолжения.
![](https://itshaman.ru/images/x2822_800.webp.pagespeed.ic.XxF5X-CE0p.webp)
Следующим шагом вам нужно будет создать нового пользователя администратора для вашей установки Matomo web analytics. Обязательно используйте надежный пароль для пользователя Matomo admin. Затем снова нажмите Следующее.
![](https://itshaman.ru/images/x2823_800.webp.pagespeed.ic.jGKUwS6ghA.webp)
На этом этапе вы установите первое отслеживание для вашего сайта. Введите имя домена вашего сайта, который вы хотите отслеживать, выберите временную зону, затем нажмите Next.
![](https://itshaman.ru/images/x2824_800.webp.pagespeed.ic.HoGQifon2J.webp)
Сейчас вы должны увидеть код JavaScript, который вы должны ввести на вашем сайте. Нажмите Next еще раз, чтобы продолжить.
![](https://itshaman.ru/images/x2825_800.webp.pagespeed.ic.PcbM3wQ0Ak.webp)
Теперь вы должны получить поздравительное сообщение о том, что вы завершили установку Matomo. Нажмите кнопку CONTINUE TO MATOMO в нижней части страницы.
![](https://itshaman.ru/images/x2826_800.webp.pagespeed.ic.niOJ51yrcI.webp)
Теперь вы будете перенаправлены на защищенное HTTPS соединение для страницы входа в систему администрирования Matomo. Введите ваше имя пользователя и пароль Matomo, затем нажмите SIGN IN.
![](https://itshaman.ru/images/x2827_800.webp.pagespeed.ic.RWmARDxVgM.webp)
Вы будете перенаправлены на защищенное соединение HTTPS для страницы входа в систему.
Если у вас есть правильный пользователь admin и пароль, вы должны получить веб-администрацию Matomo web analytics.
![](https://itshaman.ru/images/x2828_800.webp.pagespeed.ic.wAtaU2qr-W.webp)
Теперь нажмите на меню Все сайты в правом верхнем углу, чтобы получить список активных отслеживаний вашего сайта. Вы должны увидеть первый сайт, который вы создали во время установки Matomo.
![](https://itshaman.ru/images/x2829_800.webp.pagespeed.ic.pyfSANqYjW.webp)
Вы закончили установку Matomo Web Analytics. Вы добавляете другие сайты и начинаете отслеживать их с помощью самостоятельно установленного Matomo Web Analytics.
Комментарии (0)