Как установить Matomo Web Analytics на Ubuntu 22.04

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

После установки сервера MariaDB запустите приведенную ниже команду systemctl, чтобы проверить и убедиться, что сервер MariaDB работает.

sudo systemctl is-enabled mariadbsudo systemctl status mariadb

Вы должны получить результат, подобный этому – Сервер MariaDB включен и запущен по умолчанию. Кроме того, сервер MariaDB будет запущен автоматически при загрузке.

Следующим шагом будет защита установки сервера 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;

Далее выполните следующий запрос, чтобы проверить список привилегий пользователя.

SHOW GRANTS FOR 'matomo'@'localhost';quit

Вы должны получить результат, подобный этому – Пользователь MariaDB имеет все привилегии для доступа к базе данных „matomo“.

В этом разделе вы установили сервер 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 для продолжения.

После установки Apache2 и PHP выполните следующую команду systemctl для проверки службы Apache2 и убедитесь, что служба запущена.

sudo systemctl is-enabled apache2sudo systemctl status apache2

Вы получите следующее сообщение – Служба Apache2 включена и будет запущена автоматически при загрузке. И статус службы Apache2 запущен.

Следующим шагом откройте файл „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, включены.

Итак, вы закончили установку зависимостей для веб-аналитики 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.

В заключение, запустите нижеприведенную командную утилиту 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, чтобы продолжить.

Следующим образом выполните приведенную ниже команду 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 для начала установки.

Сейчас программа установки Matomo будет проверять окружение сервера для установки. Убедитесь, что все требования и настройки отмечены зеленым цветом, как показано ниже.

Также, вы должны убедиться, что основные требования соответствуют системным требованиям Matomo.

Нажмите Next для продолжения.

Теперь вы установите детали базы данных MariaDB для вашей веб-аналитики Matomo. Убедитесь, что ввели правильное имя пользователя и пароль базы данных. Затем снова нажмите Next.

Программа установки matomo web должна автоматически создать таблицы, если данные вашей базы данных верны.

Нажмите Next для продолжения.

Следующим шагом вам нужно будет создать нового пользователя администратора для вашей установки Matomo web analytics. Обязательно используйте надежный пароль для пользователя Matomo admin. Затем снова нажмите Следующее.

На этом этапе вы установите первое отслеживание для вашего сайта. Введите имя домена вашего сайта, который вы хотите отслеживать, выберите временную зону, затем нажмите Next.

Сейчас вы должны увидеть код JavaScript, который вы должны ввести на вашем сайте. Нажмите Next еще раз, чтобы продолжить.

Теперь вы должны получить поздравительное сообщение о том, что вы завершили установку Matomo. Нажмите кнопку CONTINUE TO MATOMO в нижней части страницы.

Теперь вы будете перенаправлены на защищенное HTTPS соединение для страницы входа в систему администрирования Matomo. Введите ваше имя пользователя и пароль Matomo, затем нажмите SIGN IN.

Вы будете перенаправлены на защищенное соединение HTTPS для страницы входа в систему.

Если у вас есть правильный пользователь admin и пароль, вы должны получить веб-администрацию Matomo web analytics.

Теперь нажмите на меню Все сайты в правом верхнем углу, чтобы получить список активных отслеживаний вашего сайта. Вы должны увидеть первый сайт, который вы создали во время установки Matomo.

Вы закончили установку Matomo Web Analytics. Вы добавляете другие сайты и начинаете отслеживать их с помощью самостоятельно установленного Matomo Web Analytics.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен www.howtoforge.com

Похожие статьи

Комментарии (0)