Установка бесплатной панели Vesta на VDS. Руководство по использованию образа с интегрированной панелью управления NetAngels

Собранный мной список панелей для управления своим сервером на vps/vds/dedicated server:

Платные:

cPanel

— Одна из самых распространенных хостинговых панелей управления под линукс-системы. Стабильная, дорогая хостинг-панель.
Plesk Panel — Так же распространенная панелья управления хостингом. ОС: Сentos, OpenSUSE, CloudLinux, RHEL, Debian, Ubuntu, Windows. Устанавливается из коробки Apache + Nginx очень просто и быстро. Возможна работа Nginx + php-fpm

ISPmanager

— Поддерживается многими ос, такими как Linux, FreeBSD, Windows.

В плане безопасности, достаточно стабилен и великолепно справляется с разграничением прав пользователей сервера, особенно в связке Apache-ITK + Nginx + php_mod.

платный, в настоящий момент разработали 5 версию своего продукта и изменили подход к обновлениям своего продукта. Теперь «вечная» лицензия на данный продукт будет вечной, однако обновления будут покупаться дополнительно на каждый год.

P.S.: Одновременно ISPSYSTEM «кинули» своих клиентов, которые покупали вечные лицензии для 4-й версии панели, теперь они будут иметь возможность получать критические обновления и техническую поддержку лишь до 31.12.2016.
В 2017 году для 4-й версии панели критические обновления будут отсутствовать, но панель якобы будет продолжать работать. (вечные лицензии выдавались до 2033 года).

Бесплатные:

Ajenti

Поддерживаемые ОС: Debian 6.0 и выше, Ubuntu 10.04 и выше, CentOS 6.0, RHEL, FreeBSD, ArchLinux, Gentoo.
Ajenti представляет собой среду для выполнения административных задач на сервере через веб-интерфейс. Обслуживание сайтов и управление ими осуществляется с помощью надстройки Ajenti-V, с помощью которой можно также управлять веб-сервером Nginx.

Чтобы установить Ajenti, достаточно скачать с официального сайта скрипт и запустить его на выполнение. Нужный репозиторий будет подключен автоматически; из него будут установлены все необходимые пакеты. Пакеты Ajenti-V нужно устанавливать отдельно:

apt-get install ajenti-v ajenti-v-nginx ajenti-v-mysql ajenti-v-php-fpm service ajenti restart

По умолчанию Ajenti-v рассчитан на работу с веб-сервером Nginx в связке с php-fpm, wsgi, puma, unicorn, node.js. Apache поддерживается, но эта поддержка минимальная: пользователь получает лишь доступ к конфигурационному файлу, отвечающему за работу выбранного домена. Nginx в этом случае должен быть настроен на работу в качестве reverse proxy.

У пользователей, не имеющих опыта прямого редактирования конфигурационных файлов, на этом этапе могут возникнуть проблемы. Веб-интерфейс, с помощью которого редактируются параметры Nginx, может показаться непривычным, и настроить все корректно с первого раза скорее всего не получится: потребуется несколько раз отредактировать настройки из веб-интерфейса, а затем просмотреть файлы, сгенерированные Ajenti-v, и сравнить полученное с задуманным.

Интерфейс для настройки встраиваемых интерпретаторов (например, php-fpm или uwsgi) устроен лучше, но и здесь велика вероятность столкнуться с разного рода неожиданностями. Но после первого знакомства опытные пользователи смогут оценить этот минималистичный подход и его удобство.

Из плюсов Ajenti назовем большой набор функций для управления веб-серверов и сайтами, расширяемый при помощи дополнительных модулей и плагинов. Панель отличается удобным веб-интерфейсом, реализованным на AJAX. Ajenti представляет собой в целом удобную среду, не перегруженную установками и настройками, благодаря чему даже начинающим пользователь может в ней без труда разобраться.

Единственным значительным минусом являются уже упомянутые выше сложности с редактированием конфигурационных файлов для неопытных пользователей.
Проект интенсивно развивается и улучшается с каждой новой версией. Мы считаем Ajenti вполне перспективным продуктом и рекомендуем к ознакомлению.

ISPConfig


ISPConfig устанавливается не так, как все описанные выше панели управления: сначала устанавливается все необходимое ПО (веб-сервер, СУБД, FTP, почтовая система), и только затем с помощью специального скрипта устанавливается сама панель управления. С подробной инструкцией по ручной установке и настройке под различные конфигурации и дистрибутивы можно ознакомиться на сайте howtoforge.com (см. также более упорядоченный вариант).

Такой подход дает возможность поддерживать большее количество дистрибутивов, а также реализовать функции, недоступные для большинства ПУ. Например, имеется возможность работы в своеобразном кластере из нескольких серверов, на которых установлен ISPConfig; при этом один из них является главным и управляет всеми остальными. В таком режиме работы при создании пользователя и домена можно сразу указать, на каком именно сервере будут храниться его данные. Можно также разделить функции между серверами: один будет отвечать за работу БД, другой - за основной веб-сервер, выполняющий динамическую обработку запросов, а третий - за фронтенд, принимающий запросы пользователей.

Так как подготовка среды осуществляется еще до установки самой панели, ISPConfig можно установить на систему, где уже работает сервер Nginx либо Apache. ISPConfig может работать с любым из этих серверов, которые к тому же можно настроить удобным для пользователя способом (например, Nginx + php-fpm). Поддержку связки Nginx + Apache можно настроить с помощью специального модуля.

Подготовка веб-сервера и его окружения - задача рутинная и довольно непростая, но ее можно ускорить и автоматизировать с помощью специальных скриптов. На сервер с OC Debian или Ubuntu ISPConfig можно установить c помощью cкрипта ISPConfig3-Debian-Installer. Скрипт работает как с сервером Apache, так и с Nginx. Существует и скрипт для работы со связкой Nginx + Apache.

К числу несомненных достоинств панели относятся поддержка кластерного режима и стандарта APS - функции, которые встречаются в основном у проприетарных продуктов.

Очевидным недостатком ISPConfig является сложность подготовки сервера к установке и ручная настройка всех компонентов. И хотя на на сайте howtoforge.com представлены подробные пошаговые инструкции, всех сложностей установки это не снимает.

Vesta CP

— Для установки достаточно скачать скрипт и запустить его на выполнение. Далее все происходит в автоматическом режиме. При необходимости подключаются дополнительные репозитории. Если какие-либо нужные компоненты уже были установлены ранее, то в директории /root/vst_install_backup будут сохранены резервные копии всех конфигурационных файлов, которые были затронуты при их установке.

От всех рассмотренных выше панелей Vesta CP отличается во-первых, тем, что в ней все операции, выполняемые через браузер, можно также выполнять и через консоль, а во-вторых - тем, что в ней используется модуль Apache mod_ruid2. Все консольные утилиты располагаются в директории /usr/local/vesta/bin/; иx имена начинаются с префикса «v-», например v-add-user, v-change-database-password и т.д.

Уже упомянутый выше модуль Apache mod_ruid2 заслуживает отдельного рассмотрения. О нем можно написать целую статью; здесь мы ограничимся лишь кратким описанием, но этого будет вполне достаточно, чтобы понять специфику Vesta CP. Когда на одном сервере сосуществуют множество пользователей, а все их сайты обслуживаются только одним веб-сервером, возникает проблема разграничения прав при исполнении php-скриптов. Обычно эта проблема решается путем исполнения скриптов через suexec и suphp. Преимуществом mod_ruid2 является то, что он работает напрямую с mod_php, что обеспечивает более высокую скорость выполнения.

Также для mod_ruid2 можно указать дополнительную группу (например, ту, от имени которой запущен процесс Apache) - это иногда может потребоваться для установки некоторых CMS.
У этого модуля есть существенный недостаток: при наличии уязвимостей через него возможно теоретически получить root-доступ. Сам разработчик mod_ruid2 для обеспечения безопасности предлагает использовать патчи ядра grsecurity.
Несмотря на то, что этот модуль находится еще в несколько «сыром» состоянии, он становится все более распространенным и популярным. Об этом может свидетельствовать хотя бы то, что он уже используется в панели CPanel в качестве одного из обработчиков php.

После установки ничего настраивать дополнительно не нужно, требуется лишь указать основные NS-серверы. По умолчанию при создании сайта используется веб-сервер Apache, поддерживается также связка Apache + Nginx:

Centos-Webpanel

— Free Web Hosting control panel is designed for quick and easy management of (Dedicated & VPS) servers without of need to use ssh console for every little thing. There is lot’s of options and features for server management in this control panel.

EHCP

— Nginx and PHP-FPM with completely throw out Apache and provides good performance for low end servers

ZPanel

— Бесплатная панель управления работающая под Linux, UNIX, MacOS и Microsoft Windows.

Webmin

— a super functional and powerful web hosting control panel. The software tool is designed to manage Unix and Linux platform in a simple way. WebMin is capable enough to manage various components of web based environment from setting a webserver to maintaining FTP and email server.

Virtualmin

— is one of the most popular web based hosting control panel for Linux and Unix. The system is especially designed to manage Apache virtual hosts, MySQL databases, BIND DNS Domains, Mail Boxes with Sendmail or Postfix and the entire Server from one friendly interface.

Kloxo

— Веб-панель для хостинга ориентированная на RHEL / CentOS 5.x (32-Bit)

Для грамотного управления веб-сервером и расположенными на нем сайтами, вам потребуется панель администрирования VDS.

Основные задачи, которые решает панель управления vds сервером:

  • настройка данных аккаунта пользователя;
  • управление всеми файлами и БД;
  • управление почтой;
  • отслеживание статистики ресурса.

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

Критерии выбора панели управления хостингом

1) Основные характеристики панели

  • платная/бесплатная лицензия. Как правило, бесплатное ПО уступает в функциональности и удобстве работы с ним. Тем не менее, среди бесплатных программ тоже существуют весьма хорошие варианты;
  • системные требования программы;
  • ОС, поддерживаемые программой;
  • веб серверы, совместимые с программой;
  • БД, совместимые с программой;
  • DNS-серверы, совместимые с программой;
  • управление доменами;
  • способы настройки баз данных;
  • возможность отслеживания статистики;
  • безопасность;
  • поддержка APS;
  • наличие версий для Android и IOS;
  • наличие дополнительных компонентов;
  • качество интерфейса.

2) Задачи, которые будут решаться пользователем с помощью панели управления vds.

Установка панели управления
хостингом

Установка делится на два основных вида:

Автоматическая – устанавливается ОС с панелью управления;
Ручная – для нее требуется использование скрипта. Установка сложнее, но возможен выбор желаемых компонентов.

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

  • зайти в свой аккаунт на данном ресурсе;
  • при помощи скрипта запустить установку программы;
  • выбрать желаемые компоненты;
  • подождать, пока установка закончится.

Наиболее распространенные панели управления vds сервером

ISP Manager

Данная панель управления vds обладает такими преимуществами, как:

  • прямое редактирование настроек Apache и Nginx для любого домена отдельно, вне зависимости от остальных.
  • поддержка веб-скриптов формата APS;
  • широкий функционал;
  • простой перенос аккаунтов;
  • удобный интерфейс.

Недостатки:

— ограниченность настроек для управления брандмауэром. Для активации брандмауэра необходимо активировать соответствующий модуль.

Plesk Panel

Подобно описанной выше ISP Manager, Plesk Panel обладает возможностью установки необходимых веб-приложений, что делает настройку сайта очень быстрой и простой. Также имеется удобный интерфейс и широкий функционал. К минусам можно отнести разве что слишком большое количество ненужных модулей.

Ajenti

Данная панель управления vds менее дружелюбна к начинающим пользователям из-за своего веб-интерфейса, через который осуществляются настройки файлов. Но, если вы опытный пользователь, вы сразу отметите удобство минималистичного интерфейса данной панели управления. Из плюсов стоит отметить широкий функционал, который можно увеличить добавлением модулей.

Vesta CP

Главное отличие данной панели управления vds от предыдущих – это выполнение операций, как при помощи браузера, так и через консоль, а также использование модуля Apache mod_ruid2. Управление и обновления данной панели осуществляются очень удобно, но она практически не имеет описаний шаблонов.

CPanel

Ее отличительная особенность – сложная, относительно других, установка. Перед запуском установочного скрипта следует остановить SElinux, установить Perl, а также установить полное имя домена. Данная панель управления vds отлично подходит для начинающих пользователей, ведь имеет очень простой и понятный интерфейс. Также имеется поддержка широкого спектра ПО и возможность работы на 20 языках.

ISPConfig

К основным преимуществам данной программы можно отнести поддержку кластерного режима и APS. Главный недостаток – это сложная установка и настройка модулей.

Панель управления хостингом компании AdminVPS

Чтобы грамотно подобрать панель управления vds, важно учитывать все параметры самого хостинга. Лучшим вариантом будет, если провайдер сам подобрал оптимальную панель, отвечающую всем параметрам хостинга.
В нашей компании для управления хостингом используется проверенная ISPManager , преимущества которой ценят многие пользователи:

  • поддержка и совместимость со всем ПО хостинга;
  • легкое управление;
  • надежность и безопасность;
  • легкая и быстрая установка любых CMS;
  • отслеживание статистики;
  • гибкие настройки.

Специально для клиентов, которые привыкли к архитектуре нашего хостинга, но кому нужно больше ресурсов и возможностей, мы разработали образ облачных VDS с панелью управления. Используя привычное окружение, вы получаете все невероятные возможности облачной архитектуры, такие как расширение памяти, процессорной мощности, увеличение объема диска, использование быстрых SSD накопителей. При этом вам не надо заботиться о настройке и администрировании серверов перед использованием, ведь к ним прилагается бесплатная панель управления, позволяющая делать все те же действия, что и панель управления для тарифов виртуального хостинга.

Образ с панелью. Что под капотом?

Образ с панелью управления NetAngels позволяет создавать на облачных серверах изолированные друг от друга аккаунты с индивидуальными настройками PHP, размещать на них произвольное количество сайтов, управлять ftp и ssh доступом и CRON-заданиями. Образ поддерживает все стабильные версии PHP от 5.2 и до 7.2 , и позволяет одновременно установить несколько разных версий PHP, а так же создавать индивидуальные настройки PHP для любого сайта.

Облачные VDS с панелью управления имеют совместимую с серверами хостинга архитектуру, поэтому для переноса сайтов с хостинга на такие VDS потребуется только скопировать данные с сервера на сервер.

И, в отличие от большинства других коммерческих панелей управления VDS, наша панель предоставляется абсолютно бесплатно . Вы оплачиваете только ресурсы созданных вами серверов по факту их использования.

Создание облачной VDS с панелью

Для создания облачной VDS с описываемым образом в в списке дистрибутивов необходимо выбрать "Панель NetAngels" .

Для работы панели подойдет любой тарифный план, но мы рекомендуем тариф не ниже "SMALL" и объем диска не менее 10 ГБ. Вы сможете увеличить или уменьшить выбранный тариф и объем диска в любой момент после создания VDS, если возникнет необходимость.

После добавления облачной VDS с панелью, в разделе кликните на только что созданный сервер.

В верхнем меню вы увидите меню действий "Панель". При наведении мышкой на меню будут доступны пункты: "Аккаунты" (управление аккаунтами на VDS и настройками PHP), "Доступ FTP/SSH", "CRON" и "Сайты".

По умолчанию будет создан аккаунт с именем "web" с PHP 5.4. Вы можете изменять настройки PHP для этого аккаунта и размещать ваши сайты на нем, либо создать дополнительные аккаунты для этих целей.

Характеристики образа

Образ облачных VDS серверов с панелью управления NetAngels построен на базе ОС Debian Wheezy с рядом изменений, необходимых для управления хостингом. Изменения касаются способа установки PHP, а так же запуска PHP из-под apache (измененный suexec).

Список установленного ПО (с индивидуальными настройками):

  • Apache 2.2 (mpm-worker) + Nginx 1.12.1 с возможностью управлять размещаемыми сайтами через панель управления хостингом
  • PHP версий 5.2-5.6 и 7.0-7.2 (режим FastCGI)
  • MariaDB 5.5
  • phpMyAdmin 2.x/3.x
  • FTP-сервер twoftpd с управлением аккаунтами через панель управления
  • Python 2.7.3
  • Perl 5.14
  • ImageMagick

Панель управления посылает команды серверу по протоколу ssh, подключаясь из сети 91.201.52.0/24 на порт tcp/22 с помощью ключа root@panel , размещенного в файле /root/.ssh/authorized_keys . Внося изменения в настройки сервиса ssh, не забывайте о том, что необходимо разрешить соединения на порт 22 из указанной сети. Не удаляйте ключ root@panel из authorized_keys , иначе панель управления потеряет возможность что-либо делать на вашем сервере.

Репозитории NetAngels

Мы предоставляем для наших клиентов свой собственный репозиторий Debian для тех пакетов, в которые мы внесли какие-либо изменения. Внесенные изменения включают в себя все, что необходимо для корректной работы панели управления (в частности то, как устанавливается и работает PHP). Настройки, необходимые для работы с нашими репозиториями, хранятся в файлах /etc/apt/sources.list.d/netangels-*.list .

Запуск сервисов

Основные сервисы на вашем сервере запущены с помощью супервайзера runit . Это означает, что в случае падения любого из управляемых супервайзером сервисов, он будет автоматически перезапущен. Стоит учесть, что вместо стандартной схемы управления работой этими сервисами, используется программа sv . Хотя эта программа умеет вести себя также как обычные init-скрипты Debian, вывод на экран, в процессе ее работы, отличается.

Например, если вы захотите перезапустить сервис apache2, вы можете сделать это одним из трех способов:

  1. service apache2 restart
  2. /etc/init.d/apache2 restart
  3. sv t apache2

Apache + Nginx

У нас существует два варианта серверов с панелью управления NetAngels:

Показать описание работы Apache

В составе нашего образа предоставляется Apache 2.2 с MPM worker и измененным suexec. Все создаваемые через панель сайты размещаются в директориях /home/login/sitename.ru/www . Логи access.log каждого сайта хранятся в директориях /var/log/apache2/user-sites/sitename.ru . При этом в папке с сайтом, рядом с папкой www , есть символьная ссылка (symlink) на папку с логами этого сайта.

Внесенные нами в suexec изменения сводятся к тому, что wrapper"ы, которые может запускать suexec, можно размещать не только в /var/www (как в стандартном suexec), а вообще в любом месте системы. В нашем случае это означает, что можно совершенно прозрачно использовать такие wrapper"ы, как /usr/bin/php на любом аккаунте, не задумываясь о том, как при этом устроена система изнутри (о запуске PHP ниже). PHP всегда будет запущен правильной версии, настроенной в панели управления, и с правильными настройками, созданными через панель. При запуске /usr/bin/php , он сам узнает какая версия PHP и какие настройки требуются для того аккаунта, из-под которого он запускается в данный момент.

Показать описание работы Nginx

  • отдает статические файлы: jpg|gif|png|svg|js|css|html|txt|woff
  • сжимает отдаваемые файлы при помощи gzip
  • экономит ресурсы сервера при обработке запросов. Это особенно актуально для сайтов с высокой посещаемостью.

PHP

В отличие от стандартного Debian, мы предоставляем образ, в котором одновременно может быть установлено несколько разных версий PHP. По-умолчанию подразумевается, что у каждого заведенного через панель управления аккаунта своя собственная версия PHP со своими индивидуальными настройками. Ничто не мешает вам запустить два сайта с разными настройками PHP, или даже с разными версиями PHP, и на одном аккаунте. Как это сделать, написано в статье "Запуск нескольких версий PHP на одном аккаунте ".

Однако, владельцам облачных VDS серверов мы не рекомендуем запускать много разных сайтов на одном аккаунте. В первую очередь это связано с безопасностью: если злоумышленник через уязвимость в ПО вашего сайта получит доступ в систему, он получит доступ ко всем сайтам, размещенным на одном аккаунте со взломанным. Поэтому, если вам требуется, чтобы на VDS работало два разных сайта, один из которых работал, например, на PHP 5.2, а другой на PHP 5.4, то мы рекомендуем завести для этого два разных аккаунта и запускать сайты от имени разных аккаунтов.

Показать подробности

PHP запускается с помощью двух wrapper"ов: CLI-версия через /usr/bin/php , FastCGI-версия через /usr/bin/php-cgi . Это значит, что запуская /usr/bin/php от имени любого аккаунта, созданного через панель управления, вы запустите правильную версию PHP для этого аккаунта с правильными настройками. Побочным эффектом от такой системы является то, что /usr/bin/php , запущенный от имени root, будет иметь версию и настройки отличные от любого другого аккаунта. Нужно учесть это при добавлении различных команд в cron. Задания в cron, которые требуют PHP для своего выполнения, должны добавляться в cron тому пользователю, от которого работает соответствующий сайт, к которому относятся эти задания, а не root"у.

Чтобы выяснить, какие версии PHP установлены на вашем сервере, необходимо выполнить в консоли команду dpkg -l | grep php . Чтобы посмотреть какие пакеты доступны (например, для PHP версии 5.4) нужно выполнить команду apt-cache search php5.4 . Установить PHP нужной версии (либо какие-то расширения к нему, если они не установлены), можно обычной командой apt-get install package . Например, если у вас отсутствует PHP 5.4 и вы хотите его установить, а вместе с ним еще установить поддержку memcached и расширение imagick, последовательность действий будет следующей:

Root@uXXXXX:~# apt-cache search php5.4 php5.4.5 - server-side, HTML-embedded scripting language php5.4.5-apc - Alternative php Cache php5.4.5-dbase - dBase database file access functions php5.4.5-geoip - Map IP address to geographic places php5.4.5-imagick - Imagick module for php php5.4.5-memcache - memcache module for php php5.4.5-xcache - Fast, stable php opcode cacher php5.4.5-xdebug - The Xdebug extension helps you debugging your script

Здесь мы видим полный перечень доступных пакетов для PHP 5.4. Теперь установим нужные:

Root@uXXXXX:~# apt-get install php5.4.5 php5.4.5-imagick php5.4.5-memcache

Заключительным шагом будет выполнение команды:

Root@uXXXXX:~# update-php

Данная команда сформирует и добавит wrapper для новой версии PHP. После этого в панели управления у любого аккаунта можно установить версию PHP 5.4.5.

Обратите внимание , наши пакеты PHP не могут быть установлены одновременно с пакетами PHP из стандартного Debian. Установка пакета php5 или пакетов расширений php5-* приведет к тому, что система будет сломана и окажется в нерабочем состоянии. Не устанавливайте пакеты, относящиеся к работе PHP, из стандартного Debian на ваш VDS с нашей панелью управления. Если вы обнаружите, что вам чего-то не хватает в вашей системе, вы всегда можете обратиться в нашу тех.поддержку за консультацией как правильно добавить то или иное ПО на ваш сервер.

phpMyAdmin

PhpMyAdmin ставится из пакета с именем phpmyadmin2x3x и по-умолчанию он уже установлен. PhpMyAdmin доступен по адресу http://любой-ваш-сайт/mysql/ , как и в случае тарифов виртуального хостинга.

MySQL

Вместо стандартного MySQL мы предоставляем альтернативную реализацию под названием MariaDB. Разработкой MariaDB занимается автор MySQL, который продал права на оригинальную реализацию и имя MySQL компании Oracle. MariaDB обеспечивает практически полную совместимость с MySQL, обладая при этом заметно более высокой производительностью. На практике, за несколько лет предоставления MariaDB на тарифах виртуального хостинга, мы не сталкивались со случаями, когда у кого-то встречались проблемы с несовместимостью между MySQL и MariaDB. Тем не менее, всегда можно удалить MariaDB и поставить обычный MySQL из стандартного репозитория Debian командой apt-get install mysql-server mysql-client если вы этого хотите.

Сервер MySQL доступен через unix-сокет /var/run/mysqld/mysqld.sock или по имени localhost . Для подключения к MySQL из ваших скриптов, просто используйте имя localhost в качестве имени сервера.

По-умолчанию MySQL запущен на IP-адресе 127.0.0.1 и не доступен извне вашего сервера. Чтобы изменить эту настройку, необходимо внести правку в /etc/sv/mysql/conf/my.cnf , заменив в строке bind-address = 127.0.0.1 адрес 127.0.0.1 на внешний ip-адрес вашего сервера. После этого перезапустить mysql командой sv t mysql . Мы не рекомендуем оставлять открытым для внешних подключений порт MySQL, поскольку это открывает широкие возможности для атаки на ваш сервер со стороны злоумышленников, поэтому если вам требуется подключаться к вашему MySQL со сторонних серверов, ограничивайте список ip адресов, которым доступно такое подключение, с помощью firewall. Вы всегда можете обратиться в нашу тех.поддержку в случае, если вам требуется консультация или помощь в такой настройке.

На свеженастроенном сервере пользователь root может заходить в консоль MySQL без пароля. Для этого создан файл /root/.my.cnf , в котором прописан логин и пароль для подключения к MySQL. Если вы решите поменять пароль root в MySQL, рекомендуем внести соответствующие изменения и в этот файл.

  • Tutorial

Когда ты работаешь в хостинг-компании большинство друзей и знакомых, все свои вопросы касательно хостинга решают через тебя. Это позволяет быть в тренде последних новинок, а также не только приумножать свои скиллы, но и держать их в тонусе. Как только спец. задачи ребят стало сложно решать на хостинг-сервере, как правило из-за отсутствия возможности установить необходимый софт для работы того или иного скрипта, я сразу подумал о недорогом виртуальном сервере , тем более они у нас появились. Также мы понимали, что работать с сервером будет проще через удобный веб-интерфейс, и хорошая панель управления будет, как-ни-как, кстати. А если она будет еще и бесплатной, то мы будем только в плюсе. Не долго думая, открыл браузер и начал гуглить бесплатные панели управления хостингом.

Понимая, что изучение каждой потребует время, я решил также спросить совета у нашего опытного администратора, на что получил короткий ответ:
С моей стороны была попытка обратить его внимание на то, что есть и другие бесплатные продукты:
Но руководитель тех. отдела дал довольно ожидаем ответ:

Эти не очень популярны в наших кругах.
Вот так произошло мое первое знакомство с одной из самых популярных бесплатных панелей управления хостингом в рунете - Vesta CP. Мне бы хотелось рассказать Вам, как решение поставленных задач приводит не только к написанию туториалов, но и позволяет познакомиться с интересными людьми, которые вкладывают свою душу в то дело, которые реально приносит им удовольствие. И как следствие, мы с Вами получаем замечательный программный продукт. Ну разве это не чудесно? Приятного и конструктивного Вам чтения…

Предисловие

Так как панель Vesta и в самом деле для меня была малознакома я начал собирать информацию. Нашел несколько неплохих публикаций, в том числе на ресурсе Хабрахабр, после чего даже задумался над тем, что же еще можно рассказать об этой панели, так как материала по ней в рунете реально достаточно. Но как же все может изменить один разговор!? После прочтения хорошей статьи я решил написать автору, и узнать его мнение не только о панели Vesta, но и в целом о нише бесплатных панелей управления хостингом. На мое удивление ответ не заставил себя долго ждать, а сам диалог продолжает длиться и сейчас… Много чего удалось обсудить, но это была лишь малая часть того, о чем еще предстоит поговорить. Да, скорей всего это материал для отдельной статьи, но не будем забегать наперед и вернемся к самой панели Vesta.

Установка

Не буду изменять своим привычкам - установлю на виртуальный сервер CentOS (также панель имеет поддержку Debian, Ubuntu) и подключусь к нему по SSH. Для этого, если Вы используете MacBook, запускаем Терминал и вводим следующую команду:

Ssh [email protected]
Подтверждаем подключение, указываем пароль суперпользователя, и после всех этих действий мы попадаем в консоль. Если Вы пользователь Windows, то используйте для работы с сервером эмулятор терминала PuTTY .

Curl -O http://vestacp.com/pub/vst-install.sh
Перед тем, как приступить к самому процессу установки, хотелось бы сообщить, что установщик панели автоматически классифицирует серверы на следующие 4-е группы:

  • micro - менее 1 ГБ ОЗУ;
  • small - менее чем 3 ГБ ОЗУ;
  • medium - менее 7 ГБ ОЗУ;
  • large - более чем 7 ГБ ОЗУ.
В зависимости от технических характеристик Вашего сервера, в данном случае количества оперативной памяти, установщик автоматически произведет установку определенного набора пакетов и конфигов панели Vesta. Например, пакет антивирусов будет корректно работать (согласно рекомендаций разработчиков) начиная с версии medium, а поддержка php cgi, в свою очередь, доступна для всей группы серверов кроме micro. Но ничего не мешает Вам установить недостающее программное обеспечение вручную.

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

Bash vst-install.sh
На экране Вы должны получить следующее сообщение:

_| _| _|_|_|_| _|_|_| _|_|_|_|_| _|_| _| _| _| _| _| _| _| _| _| _|_|_| _|_| _| _|_|_|_| _| _| _| _| _| _| _| _| _|_|_|_| _|_|_| _| _| _| Vesta Control Panel Following software will be installed on your system: - Nginx Web Server - Apache Web Server (as backend) - Bind DNS Server - Exim mail server - Dovecot POP3/IMAP Server - MySQL Database Server - Vsftpd FTP Server - Iptables Firewall + Fail2Ban Would you like to continue :
Подтверждаем свои действия с помощью клавиши y (yes). Далее необходимо будет указать свой email:

Please enter admin email address: [email protected]
После чего установщик может запросить ввести имя хоста:

Please enter FQDN hostname : xx1669.ua-hosting.company
Сам же процесс установки может занят около 15 минут. Немного забегая вперед, хотелось бы сказать, что если Вы устанавливаете панель Vesta на один сервер, то ввод всех необходимых данных во время установки не должен занять много времени. Но если же Вам необходимо подготовить несколько десятков серверов с данной панелью, совсем недавно один из наших клиентов поставил такую задачу, то советуем запустить установочный скрипт с ключом h (help):

Bash vst-install.sh -h
И ознакомиться с полным списком доступных опций:

Usage: vst-install-rhel.sh -a, --apache Install Apache default: yes -n, --nginx Install Nginx default: yes -w, --phpfpm Install PHP-FPM default: no -v, --vsftpd Install Vsftpd default: yes -j, --proftpd Install ProFTPD default: no -k, --named Install Bind default: yes -m, --mysql Install MySQL default: yes -g, --postgresql Install PostgreSQL default: no -d, --mongodb Install MongoDB unsupported -x, --exim Install Exim default: yes -z, --dovecot Install Dovecot default: yes -c, --clamav Install ClamAV default: yes -t, --spamassassin Install SpamAssassin default: yes -i, --iptables Install Iptables default: yes -b, --fail2ban Install Fail2ban default: yes -r, --remi Install Remi repo default: yes -q, --quota Filesystem Quota default: no -l, --lang Default language default: en -y, --interactive Interactive install default: yes -s, --hostname Set hostname -e, --email Set admin email -p, --password Set admin password -f, --force Force installation -h, --help Print this help
Которые, в свою очередь, позволят произвести установку «под себя», а также помогут ускорить процесс настройки целого «автопарка машинок». Самый простой способ пропустить ввод дополнительных данных во время установки панели - это деактивировать интерактивный режим, как следствие запустить установочный скрипт с ключом y (interactive) и параметром no .

Bash vst-install.sh -y no
Если есть еще и желание самостоятельно задать пароль доступа к панели, то добавьте ключ p (password) со своим вариантом пароля:

Bash vst-install.sh -y no -p xxxxxxxxx
Для тех пользователей кому не в кайф проводить «разбор полетов» в консоли разработчики сделали удобный веб-конфигуратор опций , что значительно упрощает процесс кастомной установки. Просто в секции Advanced Install Settings задаем необходимые параметры, после чего нажимаем кнопку Generate Install Command и вставляем уже готовую команду в консоль. Как Вам такой вариант установки?

После завершения установки на экран выведется следующее сообщение:

_| _| _|_|_|_| _|_|_| _|_|_|_|_| _|_| _| _| _| _| _| _| _| _| _| _|_|_| _|_| _| _|_|_|_| _| _| _| _| _| _| _| _| _|_|_|_| _|_|_| _| _| _| Congratulations, you have just successfully installed Vesta Control Panel https://xxx.xxx.xxx.xxx:8083 username: admin password: xxxxxxxxxx

Веб-интерфейс

Ну что, Вы готовы к встрече с «богиней»? Тогда открываем браузер и авторизируемся в панели. Обращаю Ваше внимание на то, что имя пользователя - admin.

Сразу после входа мы попадаем на страничку USER и видим информацию пока что о единственном пользователя admin с правами системного администратора. Если кому-то более приятно работать с русским интерфейсом, то открываем настройки пользователя admin и в поле Language выбираем необходимый язык. Не забываем нажать кнопку Save, чтобы сохранить изменения.

Также в работе с панелью очень помогают горячие клавиши (SHORTCUTS), которые упрощают навигацию по меню и позволяют производить управления с помощью клавиатуры. Для открытия списка всех доступных SHORTCUTS воспользуйтесь клавишей h на клавиатуре или одной из кнопок в правом нижнем углу экрана.

Пользователи

Для повышения безопасности разработчики не рекомендуют осуществлять управление сайтами из под пользователя admin, потому давайте создадим нового юзера. Переходим в меню USER и нажимаем зеленую круглую кнопку с плюсом (ДОБАВИТЬ АККАУНТ). Не забываем, что это также можно делать с помощью горячих клавиш, предыдущий скриншот должен подсказать, что в этом нам поможет клавиша - a .

Здесь Вы можете указать язык интерфейса для пользователя, а также его почтовый ящик, на который будут отправлены доступы. После заполнения необходимых полей, нажимаем кнопку «Добавить». Как следствие в меню USER у нас будет уже два пользователя и воспользовавшись клавишей ВОЙТИ КАК мы можем авторизироваться под нужным нам юзером. Стоит добавить, что разработчики позаботились о «большой миграции народов» и предоставили возможность переноса пользователей с одного сервера на другой.

Домены

Теперь можем добавлять свой сайт. Для этого переходим в меню WEB и с помощью клавиши a вызываем окно, в котором заполняем необходимые данные.

Сразу рекомендую раскрыть ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ и активировать дополнительный FTP-аккаунт, заполнив соответствующие поля. А для любителей статистики есть также возможность подключения Вашего ресурса к Webalizer или AWStats .

Базы данных

Пришла очередь создать базу данных (БД) для Вашего проекта. Все довольно просто - идем в меню DB и снова с помощью горящей клавиши a вызываем окно, где заполняем необходимые поля.

Не забываем все внесенные данные сохранить с помощью кнопки «Добавить». Далее можете спокойно заливать на хостинг нужную CMS или скрипт, на котором будет «крутиться» Ваш проект, и проводить дополнительную настройку для выпуска сайта в продакшн.

Администрирование СУБД MySQL осуществляется с помощью веб-приложения phpMyAdmin , кнопка запуска которого появится в меню DB сразу после создания хоть одной БД.

Безопасность

Как Вы может уже заметили, панель имеет фаервол, а также поддержку Fail2ban , который автоматически будет пресекать подбор паролей по разным протоколам (FTP, SSH), и в том числе к самой панели Vesta. Для настройки фаервола необходимо из под пользователя admin выбрать соответствующий пункт меню.

Где, с помощью доступного функционала, есть возможность провести необходимую настройку, в том числе и для Fail2ban.

Отчеты

В панеле управления Vesta очень хорошо реализован сбор статистики и разных данных, которые могут помочь Вам в анализе работы Вашего сервера. Например в меню Сервер Вы можете посмотреть, какой объем оперативной памяти потребляет тот или иной процесс.

Также, если Вы захотите изучить показатели процессора(ов), памяти, сети, диска(ов) и т.п., то сможете получить более развернутые данные по разным параметрам: технические характеристики сервера, какие запросы отправляются на веб-сервер и в БД, есть возможность сделать отчет по отправленным письмам и многое другое.

Не стоит забывать о графиках нагрузки, которые также могут помочь Вам в анализе работы сервера.

А для тех, кому этого недостаточно, есть возможность просмотра логов доменов вживую - меню WEB, кнопка ПОСМОТРЕТЬ ЛОГИ.

API

В панели Vesta есть API , который можно использовать в качестве фреймворка для создания собственных интерфейсов. Например Вы можете создать площадку блогов или интернет магазинов . Как сообщили мне разработчики, несколько их крупных клиентов используют панель именно таким образом.

Обновления

Обновления панели управления Vesta могут проходить автоматически, но эта функция по умолчанию отключена. Все управление обновлениями осуществляется через соответствующее меню.

Когда выходит обновление, пакеты в данном разделе меню начинают подсвечиваться красным, а также появляется кнопка Обновить. При необходимости Вы делаете один клик и все готово.

Немного терпения и я вместе с Вами загляну в ближайшее будущее «богини». Вы ведь хотите увидеть какие «плюшки» готовят для Вас разработчики в ближайшем релизе панели Vesta?

Плюшки

Думаю, практически каждый программный продукт имеет свои особенности. О некоторых из них мы уже упомянули ранее, а вот есть те, которые я специально оставил на «десерт».

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

Первый из них - это волшебный, другим словом я просто не смогу передать удобство его UI, файловый менеджер . Как только Вы активируете плагин, появится пункт меню Файлы, при переходе на которое, откроется следующее окно:

Согласен, что первое впечатление может быть немножко преувеличено, но Вы ведь еще не видели набор доступных SHORTCUTS и даже не начали работать с самим менеджером файлов, правда?

Команда разработчиков и не скрывает, что горячие клавиши были заимствованы из великолепного файл менеджера GNU Midnight Commander . Ну правда, а почему не приметь то, что реально удобно? И поверьте мне, у Вас будет возможность убедится в этом самостоятельно.

Вторым платным расширением является SFTP Chroot . Этот плагин может быть более интересен тем из Вас, кто предоставляет услуги хостинга, а также делит свой сервер с другими пользователями. Далее мне бы хотелось привести цитату самого разработчика, касательно данной дополнительной «фичи» для повышения безопасности:

FTP протокол небезопасен, поскольку все пароли передаются в чистом виде без шифрования. Сидя в кафе на публичном Wi-Fi, есть риск, что данные кто-то перехватит. Чтобы включить SFTP, нужно выдать пользователю системный шелл, однако, это позволит юзеру просматривать не только его собственные каталоги, но и системные, вроде /etc, /sbin или /bin. Это не проблема, если сервер используется 2-3 разработчиками. А вот когда уже идет речь о том, чтобы выдать доступ людям, к которым нет полного доверия, появляется дилемма. Модуль SFTP Сhroot помогает ее решить. Если модуль активирован, то на всех аккаунтах без реального шелла (/sbin/nologin), включается особый режим SFTP соединения. Такие аккаунты могут увидеть файлы только в своей домашней директории и все.
После активации данного расширения необходимо для конкретно взятого пользователя в настройках аккаунта выбрать из выпадающего списка нужный параметр, как показано на скриншоте ниже:

Вы еще думаете над тем, какую панель выбрать? Тогда я продолжаю, и перехожу к самым «вкусным плюшкам» ближайшего релиза панели Vesta.

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

Также появится возможность получить бесплатный SSL сертификат от проекта Let"s Encrypt буквально в один клик. И как заверил меня сам это функционал уже на финальной стадии тестирования.

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

В качестве благодарности хочу перечислить по имени каждого из команды разработчиков этой поистине «богини»:

Так держать, ребята!

P.S. Чтобы поддержать проект со своей стороны мы совместно с командой разработчиков решили предоставить каждому нашему клиенту, который арендует услугу облачный VPS возможность разово активировать оба коммерческих расширения панели Vesta совершенно бесплатно для одной услуги с доступом суперпользователя. Для этого после проведения заказа просто создайте тикет в отдел продаж и мы активируем для Вас плагин(ы).

P.P.S. Разработчики же со своей стороны решили также провести акцию и предоставить Вам возможность при заказе вечных версий лицензий платных расширений Vesta получить дополнительно 30% скидки. При оформлении заказа просто используйте купон HABR, который будет действовать до 15-го января.

Теги:

  • Добавить метки

Решил подыскать и потестировать дешевый VDS (Virtual Dedicated Server) - виртуальный выделенный сервер. Просматривая рейтинги на сайте Ping-Admin.ru, выбрал два претендента:

  1. adman.com - самый дешевый тариф стоит 200 рублей в месяц;
  2. vdsina.ru - самый дешевый тариф стоит 150 рублей в месяц.

Честно говоря, изначально хотел остановиться на adman.com, но напрягло то, что ширина канала 10 Mbps - такой пропускной способности может оказаться недостаточно, если на сервере разместить несколько сайтов с большой посещаемость. По этой причине, решил протестировать vdsina.ru - на всех тарифах скорость порта 100 Mbps.

Собственно, чтобы проводить эксперименты, нужна панель управления хостингом. Судя по информации в Интернете, довольно популярной является бесплатная панель Vesta, которую решил и установить.

Подключение к серверу через SSH и установка панели управления

SSH - сокращение от английского Secure Shell («безопасная оболочка»). Нам необходима программа, которая позволит создать защищенное подключение к нашему серверу. В качестве такой программы используем PuTTY (можно скачать на этой странице).

Для того, чтобы подключиться через SSH, необходимо знать IP-адрес сервера и пароль супер-пользователя root. Эта информация предоставляется после регистрации и оплаты (можно пополнить счет на 30 рублей и получить бонус в виде бесплатного тестирования в течение месяца).

PyTTY не требует установки, просто запускаем файл putty.exe.

Шаг 1. Вводим IP-адрес и жмем Open .


Можно вводить или имя хоста (Host Name) или IP-адрес. В данном случае использован второй вариант

Шаг 2. Вводим логин root и жмем Enter.

Шаг 3. Теперь необходимо ввести пароль (password).

Чтобы вставить содержимое буфера обмена в PuTTY, просто щелкните в необходимом месте правой клавишей мыши.

Копируем пароль в буфер обмена, вставляем в PuTTY и жмем Enter.


Шаг 4. После подключения необходимо ввести следующие команды:

  1. - запуск скрипта.

После запуска скрипта, начнется установка панели Vesta.

Шаг 5. На вопрос "Do you want to proceed?" (продолжить процесс) вводим "y".

Шаг 6. Please enter valid email address - вводим свой актуальный адрес электронной почты. На этот адрес будут высланы логин и пароль для доступа к панели Vesta.

Шаг 7. Please enter hostname - вводим имя хоста. Я ввел имя домена muhutdinov.com.

Теперь остается лишь наблюдать за процессом установки. Заявленное время установки - 15 минут, реально процесс установки занял всего лишь 2, 5 минуты. Связываю это с тем, что на VDS используются твердотельные диски (SSD).


Как было сказано выше, данные для работы с панелью, дополнительно будут высланы на указанный в процессе установки e-mail. Чтобы подстраховаться, можно скопировать данные из PuTTY и сохранить их на локальном компьютере.

Чтобы скопировать текст из PuTTY, достаточно его выделить при помощи мыши - после этого текст будет помещен в буфер обмена.

Вход в панель Vesta и её русификация

Не удивляетесь тому, что ваш браузер будет "ругаться" на проблемы с безопасностью, когда вы зайдете по адресу панели Vesta. Игнорируем предупреждение и вбиваем логин и пароль.


На данный момент, пользователь только один - это admin. Переходим по ссылке edit в разделе пользователя.


Переходим по ссылке edit в разделе пользователя admin (кликабельно)

В поле Language ("Язык") выбираем "ru" и жмем кнопку Save ("Сохранить").

Выбираем русский язык и сохраняем изменения

После установки панели, можно размещать на сервере сайты. Для тестирования хостинга, имеет смысл создать тестовый сайт.