Установка I‑doit Asset Management System на Ubuntu 20.04
Определения:
I‑doit — система управления IT‑активами (CMDB), для документирования серверов, ПО, сетей и связей между ними.
LAMP — стек Linux + Apache + MariaDB/MySQL + PHP.
Что вы получите
- Полную инструкцию установки I‑doit на Ubuntu 20.04.
- Конфигурации PHP и MariaDB, рекомендованные для стабильной работы.
- Шаблоны виртуального хоста Apache и инструкции по получению SSL через Certbot.
- Чек‑листы, критерии приёмки и рекомендации по безопасности и GDPR.
Важно: команды в статьях выполняйте с правами root или через sudo. Настройте DNS для домена до этапа получения SSL.
Требования
- Сервер с Ubuntu 20.04, минимум 2 ГБ RAM (рекомендуется 4+ ГБ для продакшн).
- Действующий домен, указывающий на IP сервера.
- Настроенный root-пароль или пользователь с sudo.
Установка LAMP (Apache, MariaDB, PHP и расширения)
Первым делом установим Apache, MariaDB, PHP 7.4 и необходимые расширения. Выполните одну команду, которая установит всё необходимое:
apt-get install apache2 mariadb-server libapache2-mod-php7.4 php7.4-bcmath php7.4-cli php7.4-common php7.4-curl php7.4-gd php7.4-json php7.4-ldap php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-pgsql php7.4-soap php7.4-xml php7.4-zip php7.4-imagick php7.4-memcached unzip wget curl memcached moreutils -yВажно: если на вашей системе другая версия PHP, установите соответствующие пакеты и протестируйте совместимость I‑doit.
Создание и подключение файла конфигурации PHP для i‑doit
Создайте отдельный файл конфигурации PHP для I‑doit, чтобы не ломать глобальные настройки PHP:
nano /etc/php/7.4/mods-available/i-doit.iniДобавьте следующие параметры (содержимое файла):
allow_url_fopen = Yes
file_uploads = On
magic_quotes_gpc = Off
max_execution_time = 300
max_file_uploads = 42
max_input_time = 60
max_input_vars = 10000
memory_limit = 256M
post_max_size = 128M
register_argc_argv = On
register_globals = Off
short_open_tag = On
upload_max_filesize = 128M
display_errors = Off
display_startup_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
log_errors = On
default_charset = "UTF-8"
default_socket_timeout = 60
date.timezone = Asia/Kolkata
session.gc_maxlifetime = 604800
session.cookie_lifetime = 0
mysqli.default_socket = /var/run/mysqld/mysqld.sockПримечание: параметр date.timezone указывает часовой пояс. По умолчанию в примере стоит Asia/Kolkata — замените на ваш локальный часовой пояс (например, Europe/Moscow), если это необходимо.
Активируйте модуль и примените настройки:
phpenmod i-doit
phpenmod memcached
systemctl restart apache2Оптимизация MariaDB для i‑doit
Создайте конфигурационный файл MariaDB с рекомендованными значениями для InnoDB и кэшей:
nano /etc/mysql/mariadb.conf.d/99-i-doit.cnfВставьте следующие строки:
[mysqld]
innodb_buffer_pool_size = 1G
innodb_buffer_pool_instances = 1
innodb_log_file_size = 512M
innodb_sort_buffer_size = 64M
sort_buffer_size = 262144 # default
join_buffer_size = 262144 # default
max_allowed_packet = 128M
max_heap_table_size = 32M
query_cache_min_res_unit = 4096
query_cache_type = 1
query_cache_limit = 5M
query_cache_size = 80M
tmp_table_size = 32M
max_connections = 200
innodb_file_per_table = 1
innodb_thread_concurrency = 0
innodb_flush_log_at_trx_commit = 1
innodb_flush_method = O_DIRECT
innodb_lru_scan_depth = 2048
table_definition_cache = 1024
table_open_cache = 2048
innodb_stats_on_metadata = 0
sql-mode = ""Сохраните файл и выполните вход в MariaDB:
mysqlЗатем выполните команду изменения плагина аутентификации (инструкция из оригинального руководства):
MariaDB [(none)]> SET GLOBAL innodb_fast_shutdown = 0;
MariaDB [(none)]> UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE User = 'root';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;И перезапустите службу:
systemctl restart mariadbВажно: изменение плагина аутентификации может повлиять на интеграцию с внешними инструментами. Убедитесь, что вы понимаете последствия для вашей среды.
Загрузка I‑doit
Скачайте архив I‑doit с SourceForge (пример с версией 1.14):
wget https://excellmedia.dl.sourceforge.net/project/i-doit/i-doit/1.14/idoit-open-1.14.zipРаспакуйте в корень веб‑сервера Apache:
unzip idoit-open-1.14.zip -d /var/www/html/idoitУстановите владельца и права доступа:
chown -R www-data:www-data /var/www/html/idoit/
chmod -R 775 /var/www/html/idoit/Совет: для продакшн‑среды рассмотрите более жёсткие права (например, 750) и настройку SELinux/AppArmor по потребности.
Конфигурация Apache (виртуальный хост)
Создайте файл конфигурации виртуального хоста:
nano /etc/apache2/sites-available/idoit.confПример содержимого:
ServerAdmin [email protected]
ServerName idoit.linuxbuz.com
DirectoryIndex index.php
DocumentRoot /var/www/html/idoit
AllowOverride All
Require all granted
LogLevel warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Активируйте сайт и модуль перезаписи URL:
a2ensite idoit
a2enmod rewrite
systemctl restart apache2Важно: при использовании нестандартного пути или пользовательских правил .htaccess проверьте AllowOverride.
Защита сайта с помощью Let’s Encrypt
Установите Certbot для Apache:
apt-get install python3-certbot-apache -yЗапустите Certbot и следуйте подсказкам:
certbot --apache -d idoit.linuxbuz.comВыберите опцию перенаправления HTTP → HTTPS (рекомендуется). После успешной установки сертификата в выводе будут указаны пути к сертификатам и ключам.
Внимание: автоматическое обновление сертификатов выполняется командой certbot renew. Настройте cron или systemd‑таймер, если он не настроен автоматически.
Доступ к веб‑интерфейсу I‑doit
Откройте в браузере URL вашего сайта, например:
Вы увидите проверку системы. Следуйте шагам мастера установки: выбор директорий, настройка подключений к базе, создание admin‑пользователя и финальная проверка. Ниже — изображения интерфейса (альтернативные описания на русском сохраняют пути к файлам):








Критерии приёмки
- Веб‑интерфейс доступен по HTTPS и корректно отображает страницу входа.
- Мастер установки завершён без ошибок.
- Пользователь admin создан и может войти в систему.
- Сервис Apache и MariaDB запущены и стабильно работают (проверка systemctl status).
- Выполнены базовые тесты записи/чтения в базу данных через интерфейс.
Быстрые проверки после установки
- Проверка статуса служб:
systemctl status apache2
systemctl status mariadb- Проверка логов Apache при ошибках: /var/log/apache2/error.log
- Проверка логов PHP при ошибках, если они настроены (log_errors = On).
Чек‑лист по ролям
- Системный администратор: установка ОС, LAMP, права на файлы, бэкап конфигов.
- DBA: оптимизация MariaDB, резервное копирование баз, проверка индексов.
- Специалист по безопасности: настройка HTTPS, брандмауэр, аудит прав доступа.
- Служба поддержки (Helpdesk): создание тестовых объектов, проверка бизнес‑процессов в CMDB.
Резервное копирование и откат (микро‑SOP)
- Перед обновлением сервера сделайте бэкап базы данных:
mysqldump -u root -p i-doit_dbname > idoitt_backup.sql- Скопируйте каталог приложения и пользовательские файлы:
tar czf idoitt_www_backup_$(date +%F).tgz /var/www/html/idoit- В случае отката восстановите базу и файлы в обратном порядке.
Важно: протестируйте процедуру отката на стенде до применения в продакшн.
Тесты принятия (acceptance)
- Успешная авторизация admin и просмотр панели.
- Создание и сохранение нового CI (контрольной единицы) в CMDB.
- Импорт небольшой CSV‑выборки (если используется) без ошибок.
- Доступ к HTTPS‑версиям страниц без предупреждений в браузере.
Безопасность и соблюдение конфиденциальности
- Используйте только HTTPS и отключите старые версии TLS в Apache (TLS 1.2+).
- Отключите публичный доступ к каталогу /var/www/html/idoit для ненужных IP при помощи брандмауэра.
- Храните резервные копии сертификатов и ключей в безопасном месте.
- Для соответствия GDPR: документируйте хранение персональных данных, минимизируйте период хранения и поддерживайте процессы удаления по запросу.
Примечание: I‑doit может содержать персональные данные сотрудников. Проводите оценку воздействия по защите данных при необходимости.
Устранение распространённых проблем
Проблема: белая страница или 500 ошибка.
Решение: проверьте логи Apache и PHP, убедитесь, что права доступа верны и PHP‑модули загружены.Проблема: не могу подключиться к базе.
Решение: проверьте mysqli.default_socket, сеть, пароль и плагин аутентификации MariaDB.Проблема: Certbot не может получить валидацию.
Решение: убедитесь, что DNS указывает на сервер, порт 80 открыт и виртуальный хост правильно настроен.
Альтернативные варианты развертывания
- Docker: контейнеризировать Apache+PHP+MariaDB для изоляции и ускоренного деплоя.
- Виртуальные машины в облаке: управляемые БД с бэкапом и репликацией.
- Управляемые CMDB‑решения: если не хочется поддерживать инфраструктуру самостоятельно.
Рекомендации по сопровождению и обновлениям
- Регулярно обновляйте OS и PHP‑пакеты.
- Обновления I‑doit тестируйте на отдельной среде перед продакшн.
- Настройте мониторинг состояния служб и оповещения при падении сервисов.
Краткое объявление для команды (100–200 слов)
Мы развернули I‑doit — систему управления IT‑активами — на сервере Ubuntu 20.04. Установлен стек LAMP, оптимизирована MariaDB, настроен SSL‑сертификат Let’s Encrypt и проведена базовая конфигурация. Система готова для ввода в эксплуатацию: инженеры могут создавать CI, вести учёт оборудования и отслеживать изменения. До начала массового импорта данных просьба согласовать структуру CMDB и шаблоны объектов с командой поддержки. В приложении доступны права по ролям: администраторы, операторы и просмотрщики. В случае вопросов обращайтесь к системному администратору.
Короткие подсказки для социальных сетей
OG title: Установка I‑doit на Ubuntu 20.04 с SSL
OG description: Быстрый гайд по установке I‑doit, настройке LAMP, оптимизации MariaDB и включению Let’s Encrypt.
Итог
Поздравляем — вы установили I‑doit на Ubuntu 20.04 и защитили сайт с помощью Let’s Encrypt. Следующие шаги: спланируйте модель данных CMDB, настройте бэкапы, назначьте владельцев разделов и протестируйте процедуры восстановления.
Важно: при переходе в продакшн рассмотрите возможности масштабирования: выделение отдельной MariaDB, увеличение памяти и настройку репликации при росте нагрузки.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента