ispCP Omega и Ubuntu. Веб-сервер за 20 минут

Я уже не раз писал о технических моментах создания различных проектов в Сети, сегодня я хотел бы вернуться к данной теме и рассказать в очередной раз о создании web-сервера, который будет работать на *nix-системе и использовать панель администратора, к которой так сильно привыкли те, кто долгое время пользовался услугами хостинговых компаний.

Конечно, наша панель будет отличаться от, скажем, коммерческой ISPmanager или Cpanel, или DirectAdmin. Так как все перечисленные мною панели относятся к категории коммерческих и требуют определенных финансовых средств на месячную (годовую и т.п.) подписку, или увеличение списка доменов. Однако зачем заниматься расточительством, если существует такая вещь, как свободное ПО?

ISPCP Omega – панель управления, которую мы будет ставить сегодня. Работает она с использованием mysql-базы данных, посему существует определенный риск падения, при отказе соответствующего демона. Для таких ситуаций поставим еще и webmin, о котором я не так давно писал, и который написан на perl. Именно webmin нам позволит перезапустить критические для ispcp omega процессы или поработать с сервером в своего рода gui.

Для создания всей этой красоты предлагаю использовать ubuntu server, в последнее время она мне нравится все больше и больше :). Я для работы использовал версию на x86_64, то есть 64 типа. ISPCP я использовал версии 1.0.7 RC2, собственно, думаю, что скоро этот релиз-кандидат станет полноценным релизом, поскольку никаких трабл при инсталляции и дальнейшем использовании не возникло вообще, что очень радует.

Итак, система у нас стоит, все пакеты уже обновлены командой sudo apt-get update, приступаем к установке нашей control panel.

Использовать для работы мы будем папку с тэмпами (читай, временными файлами), которая находится по адресу /tmp. Это избавит нас от лишних забот по очистке мусора после установки. Переходим в папку:

# cd /tmp

Качаем архив с панелью, линк берем с официального сайта. Так как панель является open source – неудивительно, что релизы хранятся на sourceforge.com.

# wget http://sourceforge.net/projects/ispcp/files/ispCP%20Omega/ispCP%20Omega%201.0.7%20RC2/ispcp-omega-1.0.7-RC2.tar.bz2

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

# sudo –s // переходим в консоль root’а

# apt-get install mysql-server mysql-client build-essential //собственно, устанавливаем пакеты

При установке mysql вам предложат ввести пароль для главного пользователя СУБД, то есть пароль для пользователя root. Вводим пароль и, главное, НЕ ЗАБЫВАЕМ его – это очень важно. Далее займемся панелью, прежде всего, распакуем архив (помним, что мы все еще находимся в папке tmp):
# tar xjvf ispcp-omega-1.0.7-RC2.tar.bz2

Наблюдаем за процессом некоторое время, а после двигаемся далее. Теперь переходим в папку с распакованной панелью:

# cd ./ispcp-omega-1.0.7-RC2 // перешли в папку

# ls docs //просматриваем содержимое папки Docs

В папке docs мы увидим список систем, для которых есть конфиги по установке всего необходимого ПО. Просмотрев папку docs/Ubuntu, мы увидим списки, разбитые по релизам операционной системы. Там, естественно, пока нет maverick (то есть Ubuntu 10.10), но ничего страшного – подойдет ближайший к нашей версии список – это ubuntu-packages-karmic. Что ж, приступаем к установке:

# apt-get install $(cat ./docs/Ubuntu/ubuntu-packages-karmic) //запуск инсталляции пакетов из списка

Теперь идем пить чай, поскольку качать будет долговато (хотя все зависит от вашего Интернета). При установке появится парочка вопросов по поводу папок размещения и т.п. – все оставляем по дефолту. Кстати, менеджер пакетов apt-get может ругаться на некоторые несоответствия версий в списке и в репозиториях – в таком случае юзайте менеджер aptitude.

Мы плавно приближаемся к финальной части, так как после инсталляции всех пакетов из списка следует установка самой панели. Для начала копируем файлы из временной папки в корень:

# cp –Rv /tmp/ispcp/* / // копируем

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

# cd /var/www/ispcp/engine/setup //переходим в папку со скриптом

# perl ispcp-setup //начинаем установку

Далее будьте внимательны, так как установщик спросит у вас пароль пользователя root для доступа к MySQL, а далее вы введете еще несколько доменных имен, имен пользователей и паролей. Все это необходимо помнить, так как в дальнейшем пригодится.

После окончания установки мы можем начинать пользоваться нашей панелью, введя адрес http://ip_addres/ и все. Далее по списку у нас последний штрих – установка webmin’а, который нам пригодится в некоторых ситуациях. Чтобы поставить эту панель, необходимо в консоли произвести следующие действия:

# sudo –s //получаем консоль root’а

#nano /etc/apt/sources.list //открываем для редактирования файл с репозиториями

В самом конце файла вписываем:

deb http://download.webmin.com/download/repository sarge contrib

Жмем Ctrl+O -> Enter для сохранения и Ctrl+X для закрытия. Далее добавляем ключ для репозитория:

# cd /root //переходим в папку пользователя root

# wget http://www.webmin.com/jcameron-key.asc //скачиваем файл с ключом

# apt-key add jcameron-key.asc //устанавливаем ключ

После этого всего две команды:

# apt-get update //обновляем списки софта

# apt-get install webmin //ставим панель webmin

Вот и все.

Таким образом, за время, составляющее около 20 минут (со скоростью моего канала), можно получить полностью готовый к работе хостинг со всем, что необходимо и даже немного больше. Панель, конечно, не имеет некоторых функций, которые были бы весьма нужны – но это дело привычки, работает она «на ура».

На этом все, если возникли какие-то вопросы – прошу отсылать их на ящик info@sa-sec.org.

Евгений Кучук SASecurity Group


Компьютерная газета. Статья была опубликована в номере 45 за 2010 год в рубрике soft

©1997-2024 Компьютерная газета