Устанавливаем ISPcp
В данном посте я расскажу как устанавливать панель управления хостингом ispcp.
Устанавливать будем на голый Ubuntu Server 9.10.
Требования к железу: процессор класса Pentium III не ниже 500 МГц, 256 Мб RAM, 100 Мб свободного места на диске винте. Инет понадобится в процессе установки.
В папке docs есть необходимые мануалы по установке на различные OS. Но мы будем ставить именно на Ubuntu.
Обновляем список пакетов
$ apt-get update && apt-get upgrade
Устанавливаем необходимые пакеты.
Выполняем
$sudo apt-get install apache2-mpm-worker apache2 apache2.2-common apache2-suexec apache2-utils awstats bash bind9 bzip2 chkrootkit courier-authdaemon courier-base courier-imap courier-maildrop courier-pop diff dnsutils gcc gzip iptables ispell libapache2-mod-fastcgi libapache2-mod-fcgid libberkeleydb-perl libc6-dev
libcrypt-blowfish-perl libcrypt-cbc-perl libcrypt-passwdmd5-perl libdate-calc-perl libdate-manip-perl libdbd-mysql-perl libdbi-perllibio-stringy-perl libmail-sendmail-perl libmailtools-perl libmcrypt4 libmd5-perl libmime-perl libnet-dns-perl libnet-libidn-perl libnet-netmask-perl libnet-smtp-server-perl libperl5.10 libsasl2-2 libsasl2-modules libsnmp-session-perl libterm-readkey-perl libterm-readpassword-perl libtimedate-perl libmysqlclient15off locales lsb-base make mysql-client mysql-common mysql-server original-awk patch perl perl-base perl-modules php-pear php5 php5-adodb php5-cgi php5-gd php5-mcrypt
php5-mhash php5-mysql policyd-weight postfix postgrey procmail proftpd rkhunter sasl2-bin ssh tar wget
В процессе установки пакетов будут запрашиваться параметры отдельных сервисов:
- при установке Courier на вопрос «Create directories for web-based administration?» отвечаем «No»;
- при установке Postfix выбираем «Интернет сайт»;
- при установке ProFTPd выбираем «Standalone»;
- при установке rootkithunter везде выбираем «Yes».
Опционально можно заглянуть в файл configs/ubuntu/ispcp.conf и подправить ряд переменных. Но в большинстве случаев можно поинтересоваться им уже после установки и настройки. Компилируем:
$ sudo make install
Копируем все файлы из временного каталога в корень:
$ sudo cp -Rv /tmp/ispcp/* /
Далее нам понадобится рутовский терминал. Через sudo выполнить нижеследующие команды нельзя:
$ sudo -s
# cd /var/www/ispcp/engine/setup
И ставим:
# perl ispcp-setup
В процессе установки установщик попросит вас ввести ваш домен, IP адрес сервера, логины и пароли для авторизации mysql, ftp и административной панели.
Регистрируемся в системе, используя логин admin и пароль, указанный при установке. По умолчанию язык интерфейса – английский. Для локализации переходим в Setting -> Internationalization и нажатием кнопки Browse в поле Install new language указываем на файл russian, находящийся в каталоге language-file установочного архива. Затем нажимаем кнопку Install. Новый язык появится в поле Installed languages. Отмечаем его как Default и нажимаем кнопку Save. При необходимости аналогичным образом устанавливаем другие языки; пользователи сами потом смогут выбрать себе предпочитаемый вариант.
Интерфейс визуально разделен на три части. Вверху располагаются шесть кнопок для доступа к основным настройкам. Их назначение понятно из названий: «Общая информация», «Управление пользователями», «Системные инструменты, «Статистика» и «Служба поддержки и Настройки». Выбор любого из них откроет специфические меню в левой колонке. Все настройки производятся в центре окна.
После установки перейди в меню «Общая информация» -> «Статус сервера» и убедись, что все сервисы запущены и работают нормально. Также стоит удостовериться, что они настроены на автозапуск. Проще всего перезагрузить сервер и вернуться в это окно посмотреть статистику. Если работает, значит, можно не беспокоиться (иначе – правим стартовые скрипты). Перейдя в подпункт «Лог админа», можно просмотреть все события, связанные с работой ispCP (регистрация, создание пользователей, ошибки входа и т.д.). Изменить порт любого сервиса на нестандартный можно в «Настройки» -> «Порты сервера». А информация о параметрах системы, меню для обновления ispCP и мускула находятся в меню «Системные инструменты».
Если ошибиться при вводе пароля, в первый раз будет введена задержка в 15 секунд, затем – в 30, а после третьей неудачной попытки IP блокируется на полчаса. Это поведение также можно изменить в меню «Настройки». В подпункте «Общие настройки» в поле «Password settings» выставляется минимальная длина пароля и (де)активируется режим строгого пароля. Режимы блокировки входа при неудачных попытках выставляются в поле «Определение атаки-перебора».
Кроме стандартных возможностей, заложенных в интерфейсе, в пункте «Персональное меню» можно создать свою кнопку, назначив ей определенное действие и уровень, на котором она будет доступна (администратор, реселлер или пользователь).
По умолчанию всем пользователям будет доступен только один IP-адрес и домен, указываемый при установке. Если сервер имеет несколько сетевых интерфейсов или обслуживает несколько доменов, информация о них указывается в разделе «Управление IP-адресами», а при создании новой учетной записи реселлера или пользователя отмечаются доступные ему домены. Если трафик не безлимитный, стоит зайти в раздел «Настройка трафика сервера» и установить предупреждения и лимиты. В общем, управление сервером в ispCP довольно простое, – все работает после установки в режиме по умолчанию. В конфигурационные файлы понадобится заглядывать лишь при необходимости тонкой настройки под экзотическую ситуацию.
После установки в системе присутствует только одна учетная запись со статусом администратора. Добавить другие, можно перейдя в меню «Управление учетными записями». В ispCP, в отличие от некоторых других решений, администратор сам не может отдавать отдельным пользователям запрашиваемые ресурсы. Эта функция возложена на реселлеров, роль которых могут играть менеджеры. Поэтому в этом меню администратор может создать других администраторов и реселлеров, а также переназначить реселлера или пользователя другому админу либо реселлеру. Здесь же можно просматривать список активных пользовательских сессий и при необходимости завершать их. В пункте «Почтовая рассылка» можно набрать сообщение и отправить его выбранной группе пользователей. Эту возможность обычно используют для оповещения об акциях, новых тарифах и т.д.
Интерфейс реселлера несколько отличается от админского. Тут уже появились меню «Управление хостинг планами» и «Управление заказами». В первом настраиваются шаблоны хостинга под разные условия (лимиты места на диске, трафика, поддоменов, почтовых ящиков, стоимость и т.д.). Во втором устанавливаются шаблоны заказов хостинга и показываются новые заказы. Пользователи и псевдонимы доменов создаются в меню «Управление пользователями». При выборе пункта нас встречает пошаговый мастер, который поможет быстро настроить все параметры. При создании пользователя следует учитывать свои лимиты. Так, если лимит места на диске у реселлера 1 Гб, то при попытке дать пользователю больше места, получим ошибку. Так же, как администратор, реселлер может рассылать сообщения, но только «своим» пользователям (сделать можно из меню почтовая рассылка).
Панель пользователя имеет все необходимое для управления доступными SQL-базами, доменами и псевдонимами, почтовыми ящиками и учетными записями FTP. Доступен и веб-интерфейс, позволяющий работать с электронной почтой прямо из браузера. Встроенный net2ftp обеспечивает доступ к файлам на FTP через браузер. При необходимости можно активировать защищенные зоны на веб-сервере или настроить Catch-all, то есть перехватывать всю почту, идущую в домен. По умолчанию ispCP создает резервные копии ежедневно. Доступ для восстановления информации можно получить из меню «Веб-инструменты» -> «Ежедневный бэкап».