Добро пожаловать на неофициальный городской портал г. Мытищи! Наш портал создан для того, чтобы Мытищинцы могли общаться со своими земляками ! Еще он создан для людей, интересующихся г. Мытищи! Вы можете зайти и обсудить любые темы на нашем форуме! А также купить/продать что либо на нашей доске объявлений! Узнать историю, последние новости г. Мытищи Посмотреть фотографии нашего прекрасного города! И, конечно же, оставить отзывы в нашей гостевой книге! Мы очень рады видеть Вас в любое время на нашем сайте!

-
 
 
 
 
:
 
 

Хостинг своими руками!

Настоящая статья есть пошаговая инструкция по созданию собственного сервера для оказания услуг хостинга с минимальными затратами.

В данной стать я не буду рассказывать вам где взять сервер, как установить на него операционную систему. Я расскажу о том, как сделать из этого профессиональный хостинг.

Настройку я буду производить на примере OS Ubuntu 13.04×86_64.

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

Более глубоко в сервере установлена система управления хостингом, с которой непосредственно работают в дальнейшем зарегистрированные пользователи, а также сотрудники хостинговой компании. Через нее происходит управления внутренними сервисами серверов – настройка Apache, DNS, IP, MySQL и многие-многие другие технические моменты. Эта часть хостинга является непосредственным сердцем, поскольку она позволяет автоматизировать огромное количество команд связанных с созданием новых сайтов, их обслуживанием, безопасностью и аудитом.

Таким образом для организации хостинга нам понадобится и биллинг система, и система управления хостингом. Поскольку одна из целей данной статьи сделать это с минимальными затратами, я остановлю свой выбор на платной биллинг-системе WHMCS (бесплатных НОРМАЛЬНЫХ биллинг-систем не бывает) а также бесплатной системе управления хостингом ISPConfig.

Подготовка сервера и установка ISPConfig

Первоначально необходимо установить на сервер веб-окружение, для этого (действия выполняются от рута):

1. Устанавливаем сервер MySQL:

apt-get -y install mysql-client mysql-server
— если спросят, устанавливаем пароль.

2. Устанавливаем Apache и PHP:

apt-get -y install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt sudo libtimedate-perl

3. Включим некоторые модули Apache:

a2enmod suexec rewrite ssl actions include

3. Устанавливаем cUrl для PHP:

sudo apt-get install php5-curl

4. Apache может запросить перезапуск:

/etc/init.d/apache2 restart

5. Рекомендуется установить fail2ban, так как к нему обращается ISPConfig:

apt-get install fail2ban –y

Непосредственно загрузка и установка ISPConfig:

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/

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

php -q install.php

Установка ISPConfig через терминал

Select language (en,de) [en]: <— жмём Enter
Installation mode (standard,expert) [standard]: <— вводим «expert»
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [ispconfig.local]: <— жмём Enter, значение может отличаться
MySQL server hostname [localhost]: <— жмём Enter
MySQL root username [root]: <— жмём Enter
MySQL root password []: <— вводим пароль пользователя root в MySQL
MySQL database to create [dbispconfig]: <— жмём Enter
MySQL charset [utf8]: <— жмём Enter
Shall this server join an existing ISPConfig multiserver setup (y,n) [n]: <— жмём Enter
Adding ISPConfig server record to database.
Configure Mail (y,n) [y]: <— n
Configure Jailkit (y,n) [y]: <—n
Configure FTP Server (y,n) [y]: <— n
Configure DNS Server (y,n) [y]: <— n
Hint: If this server shall run the ISPConfig interface, select ‘y’ in the ‘Configure Apache Server’ option.
Configure Apache Server (y,n) [y]: <— y
Configuring Apache
Configuring Vlogger
Configuring Apps vhost
Configure Firewall Server (y,n) [y]: <— y
Configuring Bastille Firewall
Install ISPConfig Web Interface (y,n) [y]: <— y
Installing ISPConfig
ISPConfig Port [8080]: <— жмём Enter
Enable SSL for the ISPConfig web interface (y,n) [y]: <— жмём Enter
Generating RSA private key, 4096 bit long modulus
………………………………………++
…………………………………………………++
e is 65537 (0×10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
——
Country Name (2 letter code) [AU]: <— вводим RU
State or Province Name (full name) [Some-State]: <— я ввёл номер региона
Locality Name (eg, city) []: <— вводим город
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <— вводим имя компании
Organizational Unit Name (eg, section) []: <— жмём Enter
Common Name (eg, YOUR name) []: <— жмём Enter
Email Address []: <— жмём Enter
Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []: <— жмём Enter
An optional company name []: <— жмём Enter
writing RSA key
Configuring DBServer
Installing ISPConfig crontab
no crontab for root
Restarting web server: apache2 … waiting.
Installation completed.

Уберём за собой мусор:

rm -rf /tmp/ispconfig3_install/install
rm -f /tmp/ISPConfig-3-stable.tar.gz

Готово! Доступ к панели ISPConfig осуществляется по адресу https://IP_вашего_сервера:8080/

Панель управления ISPConfig

Панель управления ISPConfig

Установка биллинг-системы WHMCS и IonCube

WHMCS представляет собой довольно функциональный и массивный PHP скрипт. Для его работы потребуется установленный MySQL сервер и IonCube loader. IonCube является расширением модуля PHP, обрабатывающий шифрованные PHP скрипты, и ускоряет обработку веб-страниц.

Начнем с установки IonCube. В зависимости от разрядности вашей операционной системы вам потребуется скачать подходящую версию дополнения.

Так для 32-битной OS Linux выполняем:

cd /var/www
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
tar xvfz ioncube_loaders_lin_x86.tar.gz

Для 64-битного Linux выкачиваем дополнение командами:

cd /var/www
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86–64.tar.gz
tar xvfz ioncube_loaders_lin_x86–64.tar.gz

Далее в браузере переходим по ссылке http://x.x.x.x/ioncube/loader-wizard.php, где x.x.x.x – IP адрес сервера на который вы производите установку. В результате перед вами должна будет появиться страничка установки IonCube, где вам будет предложено выполнить ряд действий для установки по завершению выполнения, которых вам нужно будет нажать на тестовую клавишу и убедиться, что все работает.

Установив IonCube можно приступать к установке WHMCS.

Собственнно установка WHMCS ничем не отличается от установки обычной CMS написанной на PHP с использованием MySQL. Установку можно разбить в несколько шагов:

  1. Выкачиваете WHMCS с официального сайта;
  2. Распаковываете ее в папку /var/www;
  3. В браузере переходите по адресу http://x.x.x.x/install/install.php;
  4. Принимаете условия соглашения об пользовании продуктом, указываете данные для подключения к базе данных MySQL, вводите лицензионный ключ, задаете название вашей хостинг-компании и учетную запись администратора;
  5. Ожидаете завершения установки.
Административная панель биллинг-системы WHMCS

Административная панель биллинг-системы WHMCS

На этом этап установки биллинг-системы и системы управления хостингом завершен. Остается только связать эти системы между собой для автоматизации всех процессов, но это уже совсем другая история…

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


Защитный код
Обновить