Установка на систему с панелью управления ispmanager

Установка операционной системы

Для установки рекомендуется использовать следующие версии МСВСфера ОС 9:

Инструкции по установке МСВСфера ОС вы можете найти в разделе «2 Установка и начальная настройка системы» руководства администратора.

Установка панели управления ispmanager

  1. Установите ispmanager согласно инструкции.

  2. При выборе веб-сервера необходимо выбрать вариант 1) Nginx и Apache

    Варианты установки ispmanager

Пример:

$ sudo dnf install wget -y

$ sudo wget https://download.ispmanager.com/install.sh -O install.sh

$ sudo sh install.sh --ignore-hostname --no-letsencrypt --release stable ispmanager-host

Конвертация МСВСфера 9 ОС в МСВСфера 9 Сервер редакция для хостинг-провайдеров с ispmanager (автоматический режим)

Для конвертации одной из редакций МСВСфера 9 ОС в МСВСфера 9 Сервер редакция для хостинг-провайдеров c ispmanager необходимо скачать специальный пакет. Этот пакет установит скрипт и сценарии, которые проведут конвертацию МСВСфера 9 ОС (Сервер, АРМ, Минимальная) в МСВСфера 9 Сервер редакция для хостинг-провайдеров c ispmanager, а также выполнят дополнительную настройку программных комплексов на целевом сервере.

Скачать пакет вы можете с помощью следующей команды:

$ sudo rpm -ihv https://repo1.msvsphere-os.ru/msvsphere/9/Hosting/x86_64/os/Packages/msvsphere-hosting-integration-0.1.1-1.el9.inferit.noarch.rpm

Для конвертации и настройки ispmanager в конфигурации по умолчанию (т.е. httpd-itk) выполните следующую команду:

$ sudo /usr/bin/msvsphere_hosting_convert lsisp

Для установки PHP как модуля mod_fcgid выполните следующую команду:

$ sudo /usr/bin/msvsphere_hosting_convert lsispfcgid

В случае успешного завершения работы скрипта система будет сконвертирована в МСВСфера 9 Сервер редакция для хостинг-провайдеров. Также будут запущены службы лимитирования, изоляции и сбора статистики. Теперь для завершения конвертации и применения всех настроек следует перезагрузить сервер.

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

$ sudo systemctl status klsd

$ sudo systemctl status lsstats

$ sudo systemctl status limitedfs

Также проверьте, что интеграция с сервисами PAM прошла успешно. См. «Интеграция лимитирования и сервисов, поддерживающих PAM».

В данном случае скрипт переключит ispmanager в режим Apache MPM Prefork + FastCGI. Если скрипт обнаружит домены и пользователей на сервере, то попытается их переключить в режим Apache FastCGI + PHP.

Вот таким образом будет выглядеть настроенное ПО в ispmanager (если выбран режим установки lsipfcgid):

Настройка ПО

При создании пользователя рекомендуется отключить все типы PHP кроме FastCGI.

Создание пользователя

На текущий момент интеграция с Limited Surrounding и LimitedFS поддерживается только в режиме PHP как модуль apache и в PHP-селекторе ispmanager в режиме FPM для PHP версий ниже 8.0.

После установки, в панели управления ispmanager появятся дополнительные плагины см. «Плагины ispmanager».

Конвертация МСВСфера 9 ОС в МСВСфера 9 Сервер редакция для хостинг-провайдеров c ispmanager (ручной режим)

Если по каким-то причинам невозможно перенастроить ispmanager в автоматическом режиме или нужно перевести в режим лимитирования только определённых пользователей, то необходимо запустить скрипт конвертации со следующими параметрами:

Для поддержки режима по умолчанию в ispmanager выполните команды:

$ sudo /usr/bin/msvsphere_hosting_convert lsonly

$ sudo dnf install ls-isp-plugin -y

$ sudo dnf update -y

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

Создание пользователя

На этом шаге конвертирование закончено, следующие рекомендации требуются только для режима mod_fcgid.

Для поддержки режима mod_fcgid в ispmanager выполните следующие команды:

$ sudo /usr/bin/msvsphere_hosting_convert lsonly

$ sudo dnf install ls-isp-plugin -y

$ sudo dnf update -y

После установки переключите httpd с режима itk, на prefork + FastCGI.

Для этого необходимо зайти в панель управления с правами администратора и выбрать: «Настройки» → «Конфигурация ПО» → «Веб-сервер (WWW)».

Пример выбора

Далее в открывшемся окне выбрать Apache MPM-Prefork.

Пример выбора

После перенастройки и обновления конфигурации «Веб-сервер (WWW)»» должно выглядеть следующим образом.

Настройка ПО

То есть основная настройка — это смена ITK Apache на Prefork.

При создании нового пользователя в режимах PHP рекомендуется оставить только галочку напротив FastCGI (Apache), чтоб сам пользователь не изменил режим на другой без изоляции и лимитирования.

Создание пользователя

Далее в настройке пользовательского домена необходимо выбрать «Режим работы PHP» как FastCGI (Apache).

Создание домена

Так как только этот режим поддерживает лимитирование и изоляцию.

После установки, в панели управления ispmanager появятся дополнительные плагины см. «Плагины ispmanager».

Проверка корректной настройки в ispmanager (для режима mod_fcgid)

После перенастройки конфигурация виртуального хоста пользователя в Apache должна выглядеть следующим образом (должен присутствовать параметр SuexecUserGroup):

...
<VirtualHost 127.0.0.1:8080>
        ServerName test1-isp.***
        DocumentRoot /var/www/test1/data/www/test1-isp.***
        ServerAdmin webmaster@test1-isp.***
        AddDefaultCharset off
        SuexecUserGroup test1 test1
        ...
</VirtualHost>
...

А в списке подключённых модулей должен быть mod_fcgid:

$ sudo httpd -M | grep fcgid
 fcgid_module (shared)

Для проверки наличия корректного suexec выполните следующую команду:

$ sudo strings /usr/sbin/suexec | grep limited -i

Если установка прошла успешно, вывод команды будет выглядеть следующим образом:

$ sudo strings /usr/sbin/suexec | grep limited -i
Failed to enter into LimitedFS %s

Так же проверьте интеграцию с PAM (в случае успеха команда возвратит непустой вывод):

$ sudo grep -P "pams?ls" /etc/pam.d/*
/etc/pam.d/crond:session    required     pamls.so      0     1
/etc/pam.d/sshd:session    required     pamls.so      0     1
/etc/pam.d/su:session    required     pamsls.so
/etc/pam.d/su:session    required     pamls.so      0     1
/etc/pam.d/sudo:session    required     pamsls.so

См. также «Интеграция лимитирования и сервисов, поддерживающих PAM».