Гид по технологиям

Установка MantisBT на CentOS 8

• 6 min read • DevOps • Обновлено 27 Nov 2025
Установка MantisBT на CentOS 8 — пошагово
Установка MantisBT на CentOS 8 — пошагово

О чём статья

MantisBT — свободное, открытое и веб‑ориентированное ПО для трекинга багов, написанное на PHP. Простое в использовании, с уведомлениями по email, ролями и правами доступа, поддержкой проектов и под‑проектов, графом связей задач и настраиваемой панелью. В этом руководстве показаны шаги установки Mantis на CentOS 8 с использованием Apache, MariaDB и PHP и подключением SSL от Let’s Encrypt.

Основные термины (1‑строчное определение)

  • LAMP: стек Linux + Apache + MariaDB(MySQL) + PHP.
  • Certbot: клиент для получения сертификатов Let’s Encrypt.
  • SELinux: механизм контроля доступа в ядре Linux.

Требования перед началом

  • Сервер с установленным CentOS 8 и доступом под root или sudo.
  • Домен, указывающий на IP сервера (A/AAAA запись).
  • Пароль root или доступ через sudo для установки пакетов и прав.

Установка LAMP (Apache, MariaDB, PHP)

Установите Apache, MariaDB, PHP и нужные расширения одной командой:

dnf install httpd mariadb-server php php-mysqli php-mbstring php-curl unzip -y

После установки запустите и включите сервисы при старте:

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

Совет: выполните mysql_secure_installation для базовой защиты MariaDB (установка пароля root, удаление анонимных пользователей, отключение удалённого root, удаление тестовой БД).

Создание базы данных для Mantis

Mantis использует MariaDB/MySQL. Создайте базу и пользователя:

mysql

Внутри консоли MariaDB выполните:

MariaDB [(none)]> CREATE DATABASE mantisdb;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mantisdb.* TO 'mantis'@'localhost' IDENTIFIED BY 'mantispassword';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Важно: замените mantispassword на надёжный пароль и при необходимости задайте отдельного пользователя с ограниченными привилегиями.

Установка Mantis

Скачайте текущий стабильный релиз (пример для 2.24.2):

wget https://excellmedia.dl.sourceforge.net/project/mantisbt/mantis-stable/2.24.2/mantisbt-2.24.2.zip

Распакуйте архив:

unzip mantisbt-2.24.2.zip

Скопируйте в корень Apache и назначьте владельца:

cp -r mantisbt-2.24.2 /var/www/html/mantis
chown -R apache:apache /var/www/html/mantis

Примечание: по безопасности проверьте контрольную сумму архива перед распаковкой и используйте релизы с официальных зеркал.

Конфигурация Apache для Mantis

Создайте виртуальный хост:

nano /etc/httpd/conf.d/mantis.conf

Добавьте (пример, как в исходном руководстве):


ServerAdmin [email protected]
DocumentRoot "/var/www/html/mantis"
ServerName mantis.linuxbuz.com

Options MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all


TransferLog /var/log/httpd/mantis_access.log
ErrorLog /var/log/httpd/mantis_error.log

Важно: на CentOS 8 с Apache 2.4 директивы “Order” и “Allow from” являются устаревшими. Для Apache 2.4 используйте альтернативную конфигурацию:


ServerAdmin [email protected]
DocumentRoot "/var/www/html/mantis"
ServerName mantis.linuxbuz.com

Options MultiViews FollowSymlinks
AllowOverride All
Require all granted


ErrorLog /var/log/httpd/mantis_error.log
CustomLog /var/log/httpd/mantis_access.log combined

Перезапустите Apache:

systemctl restart httpd
systemctl status httpd

Если статус показывает ошибки, проверьте /var/log/httpd/mantis_error.log и общую конфигурацию виртуальных хостов.

Настройка HTTPS через Let’s Encrypt

Установите Certbot. Примечание: certbot-auto устарел в некоторых дистрибутивах — предпочтительнее установить certbot из EPEL или пакета snapd. Пример установки certbot-auto (как в исходнике):

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

Запустите получение сертификата (пример для автоматической настройки Apache):

certbot-auto --apache -d mantis.linuxbuz.com

Во время процесса вам предложат ввести email и принять условия. Затем — выбор перенаправления HTTP → HTTPS. Для новых установок рекомендуется выбрать перенаправление (Redirect).

Важно: если certbot-auto недоступен, установите certbot через dnf из EPEL или snap и используйте certbot --apache.

После успешного получения сертификата файлы будут в /etc/letsencrypt/live/yourdomain.

SELinux и брандмауэр

На CentOS 8 SELinux обычно включён. Разрешите web‑сервису доступ к сети и установите контекст для каталога Mantis:

setsebool httpd_can_network_connect on -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/mantis

Откройте http/https в firewalld и перезапустите правила:

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Проверьте, что SELinux не блокирует Apache при доступе к БД/внешним сервисам: ausearch -m avc -ts recent.

Доступ к веб‑интерфейсу Mantis

Откройте в браузере https://mantis.linuxbuz.com. На странице предварительной проверки вы увидите набор проверок окружения и требования к правам. Заполните поля для подключения к ранее созданной базе данных: database name, username, db password, admin username и т.д., затем нажмите Install/Upgrade Database.

Главный экран установки Mantis с проверкой окружения

Параметры подключения к базе данных Mantis

Заполните данные для базы и нажмите Install/Upgrade Database

После успешной установки вы увидите сообщение об успешном завершении установки.

Установка Mantis завершена успешно

Нажмите Continue, затем войдите в систему с учётной записью администратора (по умолчанию имя administrator). Mantis при первом входе запросит пароль.

Страница входа в MantisBT

Пароль по умолчанию: root (требуется немедленная смена).

Запрос пароля администратора при первом входе

После входа вы попадёте на панель управления Mantis.

Панель управления Mantis после входа

Измените пароль администратора и заполните контакты:

Форма изменения профиля администратора

Готово — вы видите рабочую панель Mantis.

Дашборд Mantis с проектами и задачами

Рекомендации по безопасности и эксплуатации

  • Немедленно смените пароль администратора.
  • Включите HTTPS и запретите прямой HTTP, если сайт публичный.
  • Ограничьте доступ к /admin и FTP/SSH по IP, если возможно.
  • Регулярно делайте резервные копии базы данных и каталога /var/www/html/mantis.
  • Ограничьте права файловой системы: только веб‑серверу — запись в нужные каталоги.

Резервное копирование и восстановление (мини‑методология)

  1. Остановите доступ к приложению (опционально).
  2. Снимите дамп базы данных: mysqldump -u root -p mantisdb > mantisdb_backup.sql.
  3. Скопируйте каталог приложения: tar czf mantis_www_$(date +%F).tar.gz /var/www/html/mantis.
  4. Храните бэкапы вне сервера (S3, NAS) и проверяйте восстановление на тестовой машине.

Когда этот способ не подходит: варианты и ограничения

  • Много‑инстансные кластеры: для крупного окружения лучше настроить отдельную базу данных на выделенном хосте и поставить nginx или балансировщик.
  • Контейнеры: для CI/CD и лёгкой миграции используйте официальный/сообщественный образ Docker.
  • Минимальная ОС без systemd: инструкции ориентированы на систему с systemd (CentOS 8).

Альтернативные подходы

  • Установка через Docker Compose со связкой mariadb и php‑fpm+nginx.
  • Использование Nginx вместо Apache: конфигурация виртуального хоста и php‑fpm потребуется отдельная настройка.
  • Установка Mantis на управляемом хостинге/PAAS с готовым LAMP.

Быстрая проверка работоспособности (критерии приёмки)

  • Веб‑интерфейс доступен по HTTPS и возвращает 200 OK.
  • Установка базы данных прошла успешно, таблицы Mantis созданы.
  • Вход под администратором возможен, пароль изменён.
  • Плановое создание и восстановление бэкапа проходит без ошибок.

Чек‑лист по ролям

  • Администратор приложения: проверить установку, сменить пароль, создать проекты и роли.
  • DevOps/инженер: настроить бэкапы, мониторинг, SSL и обновления.
  • Руководитель проекта: проверить доступы, уведомления и начальную структуру проектов.

Простейшие тесты/приёмочные сценарии

  • Создать тестовую задачу, назначить исполнителя, изменить статус.
  • Отправить уведомление на email и проверить доставку.
  • Провести импорт/экспорт задач (если планируется миграция).

Рекомендации по обновлению и миграции

  • Перед обновлением сделайте полный бэкап БД и файлов.
  • Читайте RELEASE NOTES перед апгрейдом версии Mantis.
  • Выполняйте обновление сначала на тестовой среде.

Примеры альтернативной конфигурации: Nginx + php-fpm (кратко)

  • Используйте php‑fpm сокет/порт, настройте server_name и root на /var/www/html/mantis.
  • Перенаправьте /mcf и конфигурации для статических файлов.

Простое дерево решений для выбора способа установки

flowchart TD
  A[Нужна быстрая локальная установка?] -->|Да| B[Использовать Docker Compose]
  A -->|Нет| C[Планируется продакшен]
  C --> D{Есть опыт с Nginx?}
  D -->|Да| E[Установить Nginx + php-fpm]
  D -->|Нет| F[Установить Apache 'LAMP']

Частые проблемы и их решения

  • Ошибка при подключении к БД: проверьте credentials, хост (localhost) и порт, убедитесь, что MariaDB слушает.
  • Ошибки прав: убедитесь, что владелец /var/www/html/mantis — apache и выставлены права только на необходимые каталоги.
  • SELinux блокирует доступ: временно включите permissive и проверьте AVC‑логи.

Заключение

Поздравляем — вы установили MantisBT на CentOS 8, настроили Apache, MariaDB и подключили сертификат Let’s Encrypt. Следующие шаги: настроить уведомления, роли и интеграции с вашим процессом разработки.

Важно: поддерживайте регулярные обновления PHP, Apache и Mantis, делайте бэкапы и следите за журналами безопасности.

Краткое резюме:

  • Установили LAMP и Mantis;
  • Настроили виртуальный хост и SSL;
  • Применили настройки SELinux и firewall;
  • Добавили чек‑листы и сценарии приёмки.

Если нужны инструкции по установке в Docker, настройке Nginx или автоматизации бэкапов — спросите, и я подготовлю пошаговое руководство.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро