Установка ISPmanager 4

Admin CentOS, Linux, VPS (VDS) Обсудить

Методика установки ISPmanager 4 на чистую операционную систему CentOS.

Ниже представлена методика установки и настройки ISPmanager 4. Она не претендует на профессиональную техничность и законченность. Это лишь те действия, которые потребовались мне самому для установки этой панели.

В конце статьи приведены решения некоторых ошибок, которые возникали при установки.

Для начала следует поменять IP адрес для своего сайта на сайте, где покупалась лицензия для ISPmanager.

Если в процессе установки по каким-то причинам установка зависла, можно её принудительно завершить и заново повторить процедуру.

Установка панели ISP manager на чистую VDS (VPS)

Запустить Терминал и подключиться к серверу:

ssh user@host

где user — имя пользователя, host — ip адрес сервера.

Для подключение через специальный порт:

ssh -p port user@host

Пример:

ssh -p 123 root@12.123.12.123

Скачать установочный файл ISPmanager:

wget "http://download.ispsystem.com/install.sh"

Запустить скрипт установки ISPmanager:

bash install.sh

Установка предложит выбрать редакцию. Указать цифру 1 (ISPmanager), затем редакцию Lite.

На следующем экране предложат выбрать версию. Выбрать нужную версию.

Следующий этап выбор сборки — бета или стабильная. Выбрать стабильную.

Теперь появится синее окно, где управление проводится с помощью стрелок клавиатуры.

Выбираем зеркало, с которого будет скачиваться установщик. После нескольких «Yes» начнётся установка.

Начнётся предварительная установка, в которой нужно выбрать конфигурацию:

Install most popular software

Если выбрать Minimal install, то потом не будет многих элеметнов меню в панели ISP manager, в том числе будут отключены расширения PHP, а как их установить не всегда понятно. Поэтому лучше устанавливать рекомендованные настройки, а Minimal install оставить для профессионалов.

После установки появится сообщение:

Installation complete
Please use following information for access ISPmanager-Lite:
URL — https://ipadress:1500/ispmgr
Authorize as root to reach the panel.

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

https://ipadress:1500/ispmgr

Настройка ISPmanager

Заходим в ISPmanager.

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

При первом входе в панель ISP manager надо подтвердить лицензионное соглашение.

После этого начнутся настройки сервера. Вводим имя, можно любое, например:

isp.localhost

Автоматическое обновление отключаю (можно включить).

Меняем пароль для входа (чтобы отличался от ssh).

Установка nginx

Устанавливаем nginx через Терминал:

rpm -ihv http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

Теперь обновляем кэш пакетов yum (пакетный менеджер) и ISPmanager.

Сначала команда:

yum makecache

Затем:

/usr/local/ispmgr/sbin/pkgctl cache

После перейти в веб-интерфейс ISPmanager в меню «Настройки сервераВозможности«, где должен появиться пункт «Nginx…».

Нажать кнопку «Установить» на панели инструментов. Могут предложить две сборки – обычную или стабильную. Выбрать стабильную.

Nginx установится и настроится автоматически. Apache будет присвоит порт 8080, а Nginx будет принимать запросы и перенаправлять их на порту 80.

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

Иногда требуется более точно настроить nginx.

В файле /etc/nginx/nginx.conf изменить количество процессов worker (worker_processes 1). Изменить цифру на количество ядер в процессоре сервера. После изменений требуется перезапустить nginx. Это можно сделать через ISPmanager во вкладке — Инструменты – Сервисы.

Отключить автоматическое обновление (закомментировать строку) в этом же файле для репозитория из которого nginx был установлен:

/etc/yum.repos.d/nginx.repo

и эту строку (есть не всегда)

/etc/yum.repos.d/centalt.repo

В дальнейшем для обновления nginx можно использовать команду:

yum --enablerepo=CentALT update nginx

Установка расширения PHP

После установки ISPmanager 4 в расширениях php («Настройки сервера» -> «Расширения PHP») установить необходимые расширения.

Программу xcache.so. Она ускоряет исполнение php за счет кэширования. Можно использовать и множество других акселераторов.

xcache.so - установит XCache PHP

php-gd — иногда требуется для работы с изображениями. Мне, например, нужно было как-то для генерации миниатюр на сайте.

php-gd – установит gd.so

Для ускорения сайта

php-pecl-memcached – установит memcached.so

Установка Apache MPM-ITK

Этот модуль пришлось установить, когда WordPress не мог обновиться. Он ругался на отсутсвие доступа к определенным папкам. Ошибка возникала из-за того, что Apache создавал файлы от своих прав, в результате править эти файлы от прав пользователя было нельзя.

Для начала следует проверить есть ли этот модуль в установленной сборке:

apachectl -t -D DUMP_MODULES | grep itk

Модуль уже установлен, если приходит ответ:

mpm_itk_module (static)

Если ответа нет, устанавливаем Apache MPM-ITK.

Добавляем репозиторий CentALT:

rpm -ihv http://centos.alt.ru/repository/centos/6/x86_64/centalt-release-6-1.noarch.rpm

Затем, чтобы избежать дальнейших конфликтов, сразу же его отключаем. Открываем файл через менеджер файлов:

/etc/yum.repos.d/centalt.repo

и меняем enabled=1 на 0

Обновляем Apache из добавленного репозитория:

yum --enablerepo=CentALT update httpd

Теперь приступаем к настройке. Открываем файл:

/etc/sysconfig/httpd

Раскомментируем или вставляем строчку:

HTTPD=/usr/sbin/httpd.itk

Открываем файл:

/etc/httpd/conf/httpd.conf

Добавляем:

# mpm-itk
<IfModule itk.c>
StartServers 2
MinSpareServers 2
MaxSpareServers 10
ServerLimit 100
MaxClients 100
MaxRequestsPerChild 4000
</IfModule>

Неверная настройка вышеприведенных параметров может повлиять на нехватку оперативной памяти на сервере.

Теперь в файле:

/etc/httpd/conf.d/php.conf

Добавляем:

# mpm-itk
<IfModule itk.c>
LoadModule php5_module modules/libphp5.so
</IfModule>

И в файл:

/usr/local/ispmgr/etc/ispmgr.conf

Добавляем:

Option ApacheMPM

В этом же файле меняем значение:

ApacheProcName httpd

на

ApacheProcName httpd.itk

Выполняем команды в терминале:

perl -p -i -e 's/SuexecUserGroup/AssignUserID/g' /etc/httpd/conf/httpd.conf
killall -9 ispmgr
killall -9 httpd
service httpd restart

Удостоверяемся, что показан список процессов в названиях которых имеется .itk

ps ax | grep httpd

Установка Swap

Для увеличения производительности сервера нужно установить своп. Смотрим командой free установлен ли он или нет. Если нет, то устанавливаем.

Своп файл (Swap) — это файл на жестком диске, на который временно записывается ненужная информация из оперативной памяти при её не хватки.

Своп обычно делается в размере оперативной памяти. Делать размер больше чем она есть обычно нет смысла.

Создаем своп на 512 мб:

dd if=/dev/zero of=/swap bs=1M count=512

где of — место расположения будущего свопа, count — количество мегабайт

Форматируем созданный файл под своп:

mkswap /swap

Подключаем:

swapon /swap

Для автоматического включения свопа надо прописать информацию в файл:

/etc/fstab

Добавить туда строчку:

echo "/swapfile swap swap defaults 0 0" >> /etc/fstab

Теперь при каждой перезагрузке системы будет создаваться своп файл на 512 мб.

Для проверки состояние swap файла использовать команду:

free или top

Команда для удаления своп файла (если потребуется):

swapoff /swapfile

logrotate — ротация логов в ISPmanager 4

Настройки хранятся в файле

/etc/logrotate.conf

Логи хранятся в папке

/var/log

После изменения конфигурации логов, нужно ввести команду в терминале:

sudo logrotate -f /etc/logrotate.conf

Для улучшения системы ротации логов в файле logrotate.conf ограничиваем максимальный размер файла в 10 мб. Для этого добавляем строчку:

size=10M

Уменьшаем хранение старых логов в архивах до 2:

rotate 2

Включаем сжатие логов (раскомментировать следующее):

compress

Для внесения изменений выполняем команду в терминале:

sudo logrotate -f путь_до_logrotate.conf

Логи хранятся в папке:

/var/www/httpd-logs

Как при обращении по IP сделать перенаправление на нужную страницу

Перед секциями сайтов нужно добавить искусственную секцию:

<VirtualHost  123.123.12.123:81 >

ServerName default

DocumentRoot /var/www/all/data/www/default

</VirtualHost>

Ошибка was not close. Ошибка возникла после перезагрузки сервера. Перестал запускаться сервис http.

Проблема оказалась в файле

/etc/httpd/conf

Иногда ISPmanager 4 чудит и после каждого добавления нового сайта модифицируется файл httpd.conf.

Нужно было удалить в конце файла и поставить с новой строчки то же самое.

Проблемы и решения

Иногда в процессе установки ISPmanager 4 или после неё, уже во время работы, возникают ошибки. Они могут быть самые разные и ругаться на всё что угодно. Ниже перечислены те ошибки, с которыми столкнулся лично.

WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

Эта ошибка возникала после переустановки VPS. Не получалось зайти в панель, сообщалось об ошибке. Исправил её вводом в терминал следующей команды:

cd ~
rm .ssh/known_hosts

ERROR: selinux enabled. Edit /etc/selinux/config to disable SELINUX, reboot and re-run installation.

Эта проблема возникла во время установки панели ISPmanager 4. Для исправления нужно изменить один параметр в указанном файле. Делается следующей командой:

sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

Затем снова запустить установку:

bash install.sh

Конвертация в ‘UTF-8’ не поддерживается на стороне сервера

Файл менеджер в панели ISPmanager 4 не мог открыть текстовые файлы и писал ошибку.

Для исправления в файле:

/usr/local/ispmgr/etc/filemgr.enc

Надо вынести вперёд кодировку UTF-8, следом поставить кодирвоку — WINDOWS-1251

Forbidden
You don’t have permission to access / on this server.

Это ошибка возникала при обращении ко второму занесенному сайту в панель управления ISPmanager.

Для исправления открыть файл:

/etc/httpd/conf/httpd.conf

Найти строчку:

DirectoryIndex index.html index.htm

Рядом с этим ставим файлы index.php index.htm и т.д. (те которые нужны), перезагружаем сервер.

Не работают несколько сайтов в ISPmanager на одном IP

Иногда, для работы на одном ip нескольких сайтов, нужно в файле:

/etc/httpd/conf/httpd.conf

Раскомментировать директиву:

NameVirtualHost *:80

И заменить её на свой ip адрес с портом 81:

NameVirtualHost 123.123.12.123:81

Обычно это делается автоматически, но иногда почему-то остаётся.

Привет. Ты находишься на моём сайте. Я разработчик. Здесь я делюсь своими наработками и знаниями. Спрашивай в комментариях, если тебе что-то не понятно или пиши, если есть что добавить.

Если вам пригодилась информация, вы можете поблагодарить автора сайта символическим пожертвованием:

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи: "Установка ISPmanager 4"
Если вам нужно добавить участок кода ставьте его между тегами <code></code>