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

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

• 5 min read • Серверы • Обновлено 25 Nov 2025
Установка Orangescrum на CentOS 8
Установка Orangescrum на CentOS 8

Интерфейс Orangescrum (скриншот установки)

Ключевые варианты запросов

  • Установка Orangescrum на CentOS 8
  • Orangescrum LAMP установка
  • Развернуть Orangescrum локально
  • Orangescrum MariaDB конфигурация

Требования

  • Операционная система: CentOS 8
  • Пользователь с sudo-привилегиями (не root)
  • Если в MySQL/MariaDB включён строгий режим (STRICT), отключите его

Важно: перед началом убедитесь, что у вас есть доступ к интернету с сервера для загрузки пакетов и исходников.

Начало работы

Войдите в систему CentOS под пользователем с sudo и обновите все пакеты:

dnf update

Установка LAMP-сервера

1. Установка Apache

Установите Apache:

sudo dnf -y install httpd

Проверьте статус сервиса:

systemctl status httpd

Если служба не запущена, запустите и включите её автозагрузку:

sudo systemctl start httpd
sudo systemctl enable httpd

2. Установка и базовая настройка MariaDB

Установите сервер MariaDB:

sudo dnf install mariadb-server

Запустите и включите MariaDB, затем проверьте статус:

sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo systemctl status mariadb

Защитите установку MariaDB (mysql_secure_installation). Следуйте подсказкам и задайте надёжный пароль root:

sudo mysql_secure_installation

Обычные ответы: задайте пароль root, удалите анонимных пользователей, запретите удалённый вход root, удалите тестовую базу и перезагрузите таблицы привилегий.

Войдите в консоль MariaDB:

sudo mysql -u root -p

Проверьте текущий sql_mode:

MariaDB [(none)]> SHOW VARIABLES LIKE 'sql_mode';

Если в списке присутствует STRICT_TRANS_TABLES или другой строгий режим, отключите строгий режим глобально (временное изменение):

MariaDB [(none)]> SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION';

Проверьте значение:

MariaDB [(none)]> SELECT @@GLOBAL.sql_mode;

Проверка режима sql_mode в MariaDB

Затем перезапустите MariaDB, чтобы изменения вступили в силу:

sudo systemctl restart mariadb

Создайте базу данных и пользователя для Orangescrum. Войдите в MySQL, если ещё не в нём:

sudo mysql -u root -p

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

MariaDB [(none)]> CREATE DATABASE orangescrum;

MariaDB [(none)]> CREATE USER 'orangescrum_user'@'localhost' IDENTIFIED BY 'YourStrongPassword';

MariaDB [(none)]> GRANT ALL PRIVILEGES ON orangescrum.* TO 'orangescrumuser'@'localhost' IDENTIFIED BY 'YourStrongPassword' WITH GRANT OPTION;

MariaDB [(none)]> FLUSH PRIVILEGES;

MariaDB [(none)]> exit

Примечание: замените YourStrongPassword на надёжный пароль. При необходимости используйте другой хост вместо ‘localhost’.

3. Установка и настройка PHP

Установите PHP и необходимые расширения:

sudo dnf install php php-cli php-mysqlnd php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap php-curl php-opcache php-bcmath php-fpm

Сделайте резервную копию php.ini и измените параметры загрузки файлов и POST:

cp /etc/php.ini /etc/php.ini.bak
sudo vim /etc/php.ini

Найдите и измените значения (например, увеличьте до 200M):

post_max_size=200M
upload_max_filesize=200M

Сохраните файл и перезапустите Apache:

sudo systemctl restart httpd

Загрузка и установка Orangescrum

Скачайте исходники Open Source версии:

sudo wget https://github.com/Orangescrum/orangescrum/archive/master.zip

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

sudo unzip master.zip

Переместите папку в веб-директорию и установите права доступа:

sudo mv orangescrum-master /var/www/html/

sudo chown -R apache:apache /var/www/html/orangescrum-master
sudo chmod -R 777 /var/www/html/orangescrum-master

Важно: chmod 777 — удобно для установки, но небезопасно на production. См. раздел «Укрепление безопасности» ниже.

Настройка виртуального хоста Apache

Создайте файл конфигурации:

sudo vim /etc/httpd/conf.d/orangescrum.conf

Добавьте содержимое:


ServerName localhost
DocumentRoot /var/www/html/orangescrum-master

AllowOverride All
Order allow,deny
allow from all

Проверьте синтаксис и перезапустите Apache:

sudo apachectl configtest
sudo systemctl restart httpd

Конфигурация Orangescrum

Импортируйте таблицы в базу данных:

mysql -u orangescrum_user -p orangescrum < /var/www/html/orangescrum-master/database.sql

Отредактируйте файл подключения к базе данных:

vim /var/www/html/orangescrum-master/app/Config/database.php

Замените параметры подключения на ваши данные:

class DATABASE_CONFIG {

    public $default = array(
            'datasource' => 'Database/Mysql',
            'persistent' => false,
            'host' => 'localhost',
            'login' => 'orangescrum_user',
            'password' => 'Your_StrongPassword',
            'database' => 'orangescrum',
            'prefix' => '',
            'encoding' => 'utf8',
    );
}

Сохраните изменения.

Отредактируйте constants.php для настройки SMTP и уведомлений:

sudo vim /var/www/html/orangescrum-master/app/Config/constants.php

Найдите и измените блок SMTP, указав свои значения:

//Gmail SMTP
define("SMTP_HOST", "ssl://smtp.gmail.com");
define("SMTP_PORT", "465");
define("SMTP_UNAME", "[email protected]");
define("SMTP_PWORD", "******");
define("IS_SMTP", "0");

define('FROM_EMAIL_NOTIFY', '[email protected]');
define('SUPPORT_EMAIL', '[email protected]');

Снова перезапустите Apache:

sudo systemctl restart httpd

Правила брандмауэра и SELinux

Откройте порт HTTP в firewalld:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Для быстрой отладки можно временно отключить SELinux:

setenforce 0

Важно: временное отключение SELinux облегчает установку, но лучше настроить постоянные правила SELinux для web-сервисов или включить обратно в production.

Тестирование установки

Откройте браузер и перейдите по адресу http://yourserverIP. На странице установки введите название компании, email и пароль, затем нажмите Sign Up. Проверьте, что вы можете войти и создать проект/таск.

Критерии приёмки

  • На странице http://yourserverIP доступен интерфейс Orangescrum
  • Успешный вход после регистрации
  • Создание проекта и задачи без ошибок
  • Уведомления по SMTP доставляются при включенной SMTP-конфигурации (если установлен IS_SMTP = 1)

Типичные проблемы и их решения

  • Ошибка подключения к базе: проверьте database.php, логин/пароль и хост, убедитесь, что пользователь имеет права на базу.
  • Проблемы с правами файлов: временно используйте chmod 775 и chown apache:apache; избегайте 777 в долговременной эксплуатации.
  • PHP ошибки при загрузке страниц: проверьте логи Apache (/var/log/httpd/error_log) и включите display_errors только для отладки.
  • SMTP не отправляет письма: проверьте правильность хоста/порта/логина, при использовании Gmail — проверьте разрешения аккаунта и двухфакторную аутентификацию.

Роль-based чек-листы перед запуском

Администратор сервера:

  • Установить и обновить пакеты OS
  • Создать пользователя с sudo
  • Настроить брандмауэр и SELinux
  • Обновить сертификаты (если нужен HTTPS)

БД-администратор:

  • Создать базу и пользователя
  • Проверить sql_mode и права
  • Создать резервную политику бэкапов

Dev/Ops инженер:

  • Настроить виртуальный хост Apache
  • Настроить PHP и расширения
  • Настроить мониторинг сервисов (uptime, disk)

Менеджер проекта / владелец продукта:

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

Укрепление безопасности (рекомендации)

  • Замените временные права 777 на более строгие (например, 750/770) и назначьте владельцем apache:apache.
  • Включите SELinux и настройте необходимые boolean-переменные для httpd (setsebool -P httpd_can_network_connect on), если требуется исходящая почта.
  • Настройте HTTPS (Let’s Encrypt) и перенаправление с HTTP на HTTPS.
  • Ограничьте доступ к административным интерфейсам по IP, если возможно.
  • Настройте регулярный бэкап базы данных и файлов приложения.

Небольшое руководство по откату и инцидентам

  • Если сайт недоступен после изменений конфигурации Apache: выполнить sudo apachectl configtest, откатить файл конфигурации и перезапустить httpd.
  • Если база повреждена: восстановить из последнего бэкапа .sql.
  • При утечке учётной записи администратора: сразу сбросить пароли и отключить внешний доступ к серверу, проверить логи.

Короткая методология развертывания (мини-SOP)

  1. Подготовка сервера: обновление пакетов, создание sudo-пользователя.
  2. Установка Apache, MariaDB, PHP и зависимостей.
  3. Создание базы данных и пользователя, импорт схемы.
  4. Копирование исходников Orangescrum в /var/www/html.
  5. Настройка конфигураций (database.php, constants.php).
  6. Проверка работы, настройка брандмауэра и HTTPS.
  7. Перевод в production: ужесточение прав, включение SELinux, настройка бэкапов.

Тестовые сценарии и приёмка

  • Регистрация нового аккаунта — ожидаемый результат: пользователь создан, перенаправление в панель.
  • Создание проекта — ожидаемый результат: проект появляется в списке.
  • Загрузка вложения > 50 МБ — ожидаемый результат: файл принимается при upload_max_filesize=200M.
  • Отправка уведомления по почте — ожидаемый результат: письмо доставлено (проверить спам).

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

  • Orangescrum можно развернуть на CentOS 8 с использованием Apache, MariaDB и PHP.
  • Важные шаги: отключение строгого режима SQL, корректная настройка прав файлов и параметров PHP, импорт базы данных и настройка SMTP.
  • Перевод в production требует усиления безопасности: HTTPS, корректные права, SELinux и бэкапы.

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

Поделиться: 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 быстро