На этой странице описан порядок действий при установке GLPI на Ubuntu22. Ubuntu настраивается в виде ВМ на Hyper-V Windows Server 2019. GLPI планируется использовать только как Hekp Desk внутри локальной сети. Устанавливается версия 10.0.16.

GLPI – (Gestionnaire libre de parc informatique ) — cвободный менеджер ИТ-инфраструктуры, является системой для инвентаризации оргтехники, программ, ведения проектов, базы знаний предприятия и обслуживания заявок по тех.поддержке. Бесплатное ПО с платными дополнительными функциями и при необходимости, платной тех.поддержкой. Официальный сайт.

Содержание.

Создание ВМ.

Установка Ubuntu.

Настройка удаленного подключения.

Установка Apache2.

Установка PHP.

Установка MYSQL.

Установка GLPI.

Мастер первоначальной настройки.

Устранение проблем безопасности.

 

Создание ВМ.

В организации работает гипервизор на Windows Server 2019. Одной из его виртуальных машин планируется GLPI.

Создаем новую ВМ.

 

Проходим по мастеру. Параметры как на картинке ниже. Выбираем установить ОС позже. Нажимаем кнопку «Готово».

 

В параметрах созданной ВМ:

-отключаем безопасную загрузку;

-добавляем количество ядер процессора; (можно назначить резерв ресурса %)

-изменяем объем динамической ОЗУ;

 

-назначаем сетевой адаптер;

 

-добавляем DVD-дисковод и загружаем в него образ UBUNTU;(последнюю версию Ubuntu можно скачать с официального сайта бесплатно )

Еще можно назначить автозапуск после включения гипервизора.

Настройка через командную строку PowerShell (запуск от имени администратора).

Настройка сети.

Если в гипервизоре еще нет виртуального коммутатора, то его нужно создать.



Установка Ubuntu.

Запускаем ВМ.

 

Выбираем «Try or Install Ubuntu».

 

Выбираем язык English.

 

Выбираем английскую раскладку клавиатуры.

 

Выбираем обычную установку.

 

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

 

Подтверждаем это.

 

Выбираем часовой пояс.

 

Указываем имя компьютера, учетную запись и пароль.

 

Ожидаем установку.

Система установлена. Вводим указанный ранее логин и пароль и попадаем на рабочий стол.

ВМ подключена в сеть. IP-адрес присвоился по DHCP. Доступ в Интернет обязателен.

Запускаем терминал Ctrl+Alt+T.

Входим с правами root.

Вводим пароль админа. Ввод пароля не отображается.

 

Далее все действия в терминале выполняются с правами root!

Обновляем систему.

После второй команды начнется обновление всех установленных пакетов. Это может происходить продолжительное время.

 

Настройка удаленного подключения.

Работы будут выполняться в локальной сети. Подключение будет происходить от ПК с Windows 10 к ПК с Ubuntu 22 по RDP.

Вводим команды в терминале.

 

Проверка статуса

 

Подключаемся по RDP из Windows на IP-адрес ПК с Ubuntu.

Предварительно пользователь на Ubuntu должен выйти из системы, чтоб удаленный пользователь из Windows вошел.

Переходим на ПК с Windows. Открываем RDP.

Win+R >> mstsc.

 

Вводим IP-адрес. Подключаемся.

 

Вводим логин и пароль (без указания домена).

Попадаем на рабочий стол Ubuntu.

Если дополнительно появится окно аутентификации, то нужно ввести пароль и подтвердить.

 

Установка.

Для работы GLPI потребуются следующие компоненты:

Apache

PHP

MYSQL

 

Установка Apache2.

Устанавливаем apach2 и модуль работы с php.

 

Включаем автозапуск.

 

Запускаем службу

 

Проверяем статус

Active (running) – значит работает.

Можно посмотреть страницу приветствия перейдя в браузере по адресу:

 

Установка PHP.

Планируется установка GLPIv10. Проверяем системные требования к PHP для этой версии по ссылке.

Информация о пакете php.

(текущая версия 8.1)

 

Установка.

 

Установка дополнительных модулей. Какие модули нужно устанавливать написано в системных требованиях  GLPI PHP.

 

Многие модули уже изначально присутствуют в php8.1.

Проверка работы php.

В командной строке создаем файл info.php с помощью редактора nano.

 

Содержание файла

 

Выходим из редактора —  нажимаем Ctrl+X, потом y (yes).

(сохранить и закрыть)

 

В браузере проверяем ссылку.

Если видим эту страницу, значит все сделано правильно и php работает.

 

Установка MYSQL.

Проверяем системные требования. На данный момент они такие.

 

Добавление в автозагрузку и старт

 

Проверка статуса.

 

Проверка версии mysql

 

Результат.

 

Создадим базу данных.

Заходим в mysql с правами root.

 

Создаем БД с названием glpi.

 

Создаем пользователя для доступа к базе данных.

Имя пользователя: glpi.

Пароль: password.

 

Назначаем привилегии.

 

Перечитываем конфигурацию.

 

Выходим.

 

Установка GLPI.

Скачиваем и устанавливаем.

Переходим во временную папку.

 

Скачиваем последнюю актуальную версию ПО.

 

Чтоб узнать ссылку на новую версию нужно перейти на страницу GLPI нажать правой кнопкой мыши «Копировать адрес ссылки».

 

Распаковываем архив.

 

Копируем glpi из tmp в apache

 

Назначаем владельца

(www-data:www-data это пользователь и группа которой мы даем права на папку glpi. Этого пользователя apache (в Ubuntu) использует по умолчанию для нормальной работы.)

 

Создаем файл конфигурации виртуального домена.

 

Редактируем файл.

Образец конфигурации виртуального домена так же есть на этой странице.

Сохраняем и выходим. (Ctrl+X yes)

 

Назначение команд в файле конфигурации веб-сервера.

<VirtualHost *:80> порт, на котором работает веб-сервер

ServerName glpi – имя сервера (можно указать IP-адрес)

DocumentRoot /var/www//html/glpi/public – корневая директория расположения файлов.

Начиная с версии 10.0.6 разработчик рекомендует размещать корень в директории public если есть другие сайты на этом сервере

CustomLog ${APACHE_LOG_DIR}/glpi_access.log combined – { переменная среды расположения логов apache} и файл сбора логов доступа glpi

ErrorLog ${APACHE_LOG_DIR}/glpi_error.log – {переменная среды расположения логов apache}и файл сбора логов ошибок glpi (переменная ведет в /var/log/apache2)

Allow from all = Require all granted – (первое устаревший вариант второго), это разрешение на доступ к веб-серверу всем пользователям. Вместо all можно указать конкретного пользователя или группу.

RewriteEngine On – включение компонента веб-сервера RewriteEngine, который позволяет выполнить дополнительные действия при обработке URL-адресов. Например, конвертирование очень длинных URL в более воспринимаемые, перенаправление.

RewriteRule –  перенаправление между URL указанных в условиях после команды.

RewriteCond %{REQUEST_FILENAME} !-f – выполнить изменение URL, если выполняется указанное условие: запрошенное имя файла не является обычным файлом, который существует.

RewriteRule ^(.*)$ index.php [QSA,L] – представить имя файла запроса как значение параметра для index.php и добавить строку запроса из исходного url, затем остановить обработку файла.

Подробное назначение флагов.

 

Перезапускаем apach2

 

Если apache2 не запускается, то нужно выполнить такую команду.

 

Мастер первоначальной настройки.

Переходим в браузере по адресу:

 

Откроется мастер первоначальной настройки.

Выбираем язык >> ОК.

 

Читаем лицензию. Нажимаем кнопку «Продолжить».

 

Выбираем «Установить».

 

Проверяем модули. Чего недостает —  доустанавливаем. Например, отсутствует модуль intl, хотя он устанавливался.

Устанавливаем повторно и перезапускаем apache2.

 

Проверяем ошибки дальше. Корневой каталог мы уже перенесли в директорию public поэтому можем игнорировать эти два предупреждения.

 

Следующее предупреждение.

 

Проверяем. Для кого это актуально – исправляем. Примерно строчка 1400.

 

Перезапускам apache2

 

Проверяем установку. Ошибка пропала. Появилась кнопка продолжить.

 

Если есть еще какие-то ошибки – устраняем их и нажимаем кнопку «Продолжить».

Вводим параметры базы данных. Пользователь и пароль те, которые были созданы при создании БД (glpi, password).

 

Отмечаем базу данных glpi. >> Продолжить.

 

На третьем шаге ожидаем примерно 10мин.

 

Нажимаем «Продолжить».

 

На следующем шаге решаем, будем ли мы отправлять статистику использования. Нажимаем «Продолжить».

 

Шаг №5. Реклама. Платная тех. поддержка. Нажимаем «Продолжить».

 

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

 

Входим в систему. Логин и пароль glpi.

 

Если вы входите в GLPI по сети, нужно указывать IP-адрес 192.168.1.19/glpi

Если входите на Ubuntu где GLPI установлена, то в адресной строке нужно указывать localhost/glpi

 

Устранение проблем безопасности.

При первом подключении информационная табличка сообщает нам о проблемах с безопасностью. Устраним их.

 

Стандартные учетные записи не планируется использовать, поэтому отключим их.

В главном меню переходим в: Администрирование >> Пользователи.

Отмечаем нужных пользователей. Выбираем действие >> Обновить >> Характеристики – Активен >> Нет.Нажимаем кнопку «Отправить» и статус активности станет «Нет».

 

Для пользователя glpi изменим пароль. Нажимаем на имя этого пользователя и в его профиле вводим новый пароль.

 

Нажимаем кнопку «Сохранить» в нижней части профиля.

 

При следующем входе в систему понадобится ввести новый пароль.

 

Следующее предупреждение.

Удаляем файл install.php с помощью команды в терминале.

 

Обновляем страницу glpi.

Осталась одна проблема безопасности. «Конфигурация корневого каталога веб-сервера небезопасна, поскольку позволяет получить доступ к непубличным файлам».

Тут непонятная ситуация. Корневая папка установлена, но ошибка висит. Это баг (?). Файлы конфигурации не находятся в корне т.к корень public. Конфигурация считается безопасной, если index.php находится в public. Он там и находится.

 

Исправить этот баг можно, отредактировав файл SafeDocumentRoot.php

87 строка, пишем return;

 

Предупреждение пропало.

 

После выполнения настроек желательно сделать бэкап всей системы и делать его регулярно, хотя бы 1 раз в месяц (или чаще). В данном случае бэкап выполняется в виде экспорта виртуальной машины.

 

На следующей странице представлена настройка GLPI в роли системы приема заявок HelpDesk.