Вибираємо панель управління хостингом

ISP Manager
За замовчуванням використовується веб-сервер Apache. Nginx встановлюється додатково (для цього потрібно просто перейти в розділ «Налаштування сервера» -> «Можливості»):


На відміну від версії 4 у версії 5 використовується незалежний веб-сервер, що забезпечує роботу панелі управління і ніяк не пов'язаний ні з Apache, ні c Nginx. Саме тому від використання Apache можна відмовитися. Необхідно лише налаштувати сайт на роботу в зв'язці Nginx + php-fpm. Потрібно, однак, враховувати, що php-fpm повністю замінити apache не може. Наприклад, при переході на php-fpm функції перетворення URL в человекопонятний (реалізований через mod_rewrite в Apache) вид повинні оброблятися вже веб-сервером Nginx.
До переваг п'ятої версії можна віднести можливість прямого редагування конфігураційних файлів Apache і Nginx для обраного домену, завдяки чому для кожного домена можна встановлювати індивідуальні налаштування, які не будуть поширюватися на інші.
До недоліків можна віднести обмежені функції управління брандмауером та його неактивність за замовчуванням. Хоча модуль управління мережевим екраном активується ще на етапі установки панелі, за замовчуванням правила неактивні. Щоб їх активувати, необхідно внести хоча б одна зміна в список існуючих правил з панелі управління (наприклад так, як це зазначено вище).
Plesk Panel
Щоб встановити Plesk Panel, досить завантажити з офіційного сайту інсталяційний скрипт і запустити його з консолі.
«З коробки» підтримується зв'язка Nginx + Apache, ніякої додаткової настройки не потрібно. Можна відразу створювати домен і завантажувати вміст сайту. Якщо після установки панелі встановити ще і додатковий модуль брандмауера, то відразу ж будуть задіяні правила, що обмежують доступ до веб-сервера Apache.
Робота в режимі Nginx + php-fpm можлива, але для цього потрібно встановити компонент підтримки php-fpm cо сторінки встановлення та оновлення Parallels:

і вказати для обраного домену, що файли php повинні оброблятися за допомогою Nginx:

Як і ISP Manager, Plesk Panel дозволяє встановлювати необхідні веб-додатки (APS) з самої панелі управління, звівши, тим самим, дії користувача по підготовці сайту до мінімуму.

З переваг Plesk варто виділити зручний інтерфейс, багатий набір функцій, наявність численних розширень (addons), які встановлюються безпосередньо з панелі управління.
Недолік можна виділити тільки один: перевантаженість модулями, які більшості кінцевих користувачів навряд чи знадобляться.
Ajenti являє собою середовище для виконання адміністративних завдань на сервері через веб-інтерфейс. Обслуговування сайтів і управління ними здійснюється за допомогою надбудови Ajenti-V, за допомогою якої можна також керувати веб-сервером Nginx.
Щоб встановити Ajenti, досить завантажити з офіційного сайту скрипт і запустити його на виконання. Потрібний репозиторій буде підключений автоматично; з нього будуть встановлені всі необхідні пакети. Пакети Ajenti-V потрібно встановлювати окремо:
За замовчуванням Ajenti-v розрахований на роботу з веб-сервером Nginx в зв'язці з php-fpm, wsgi, puma, unicorn, node.js. Apache підтримується, але ця підтримка мінімальна: користувач отримує лише доступ до конфігураційного файлу, який відповідає за роботу обраного домену:

Nginx в цьому випадку повинен бути налаштований на роботу в якості reverse proxy:

Інтерфейс для налаштування вбудованих інтерпретаторів (наприклад, php-fpm або uwsgi) влаштований краще, але і тут велика ймовірність зіткнутися з різного роду несподіванками. Але після першого знайомства досвідчені користувачі зможуть оцінити цей мінімалістичний підхід і його зручність.
З плюсів Ajenti назвемо великий набір функцій для управління веб-серверів і сайтами, розширюваний за допомогою додаткових модулів і плагінів. Панель відрізняється зручним веб-інтерфейсом, реалізованим на AJAX. Ajenti є в цілому зручне середовище, що не перевантажену установками і настройками, завдяки чому навіть початківцям користувач може в ній без праці розібратися.
Як і у випадку з попередніми панелями, для установки досить завантажити скрипт і запустити його на виконання. Далі все відбувається в автоматичному режимі. При необхідності підключаються додаткові репозиторії. Якщо будь-які потрібні компоненти вже були встановлені раніше, то в директорії / 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:

Підтримки режиму Nginx + php-fpm на даний момент ще немає, реалізація обіцяна в найближчому релізі.
Незважаючи на мінімалістичний інтерфейсу, VestaCP надає всі необхідні засоби для створення і управління сайтом: управління користувачами, створення доменів і баз даних. Деякі операції (такі, наприклад, як настройка параметрів php) при цьому все одно доведеться виконувати за допомогою консолі. З переваг VestaCP виділимо швидку з точки зору користувача роботу, простоту установки і оновлення, хороший форум технічної підтримки.
З недоліків можна виділити тільки один: відсутність хоча б короткого опису шаблонів зі списку, що задаються для Apache, Nginx і DNS. Втім, цей мінус не такий вже суттєвий: всю необхідну інформацію можна знайти в офіційній документації. а пропоновані за умовчанням шаблони підходять для більшості випадків.
Vesta CP інтенсивно розвивається; будемо сподіватися, що найближчим часом вона стане більш функціональною і зручною.
Від згаданих вище панелей CPanel відрізняється складною процедурою установки. Перш ніж завантажити з офіційного сайту і запустити інсталяційний скрипт. потрібно здійснити попередню підготовку: відключити SELinux, встановити Perl, задати повне ім'я домену (fqdn) в файлах / etc / sysconfig / network і / etc / hosts.
Під час установки всі необхідні для роботи веб-сервера компоненти збираються з вихідних кодів. Все це зі зрозумілих причин робить процес установки дуже довгим.
До складу сPanel входять два компоненти: власне CPanel і WHM. WHM є веб-інтерфейс для «суперадміністратора», за допомогою якого можна отримати доступ до всіх налаштувань середовища - наприклад, поставити важливі параметри, що впливають на продуктивність Apache (max_clients, min / max spare servers і інші), доступ до всіх можливих опцій php та ін. Безперечна зручність полягає в тому, що настройки можна змінювати через веб-інтерфейс, а не редагувати вручну конфігураційні файли. Однак для того, щоб нові налаштування вступили в силу, в деяких випадках може знадобитися Перезбірка окремих компонентів.
Для настройки веб-сервера використовується інструмент WHM EasyApache. C його допомогою можна вибрати конкретний профіль - набір можливостей, який буде підтримувати сервер. Якщо вибрати, наприклад, профіль Basic, то всі запити будуть оброблятися за допомогою стандартного модуля mpm_prefork. Якщо ж вибрати профіль MPM ITK, то буде використаний модуль mpm_itk, що підвищує безпеку роботи веб-сервера за рахунок розділення процесів по користувачам:

CPanel є панель управління в традиційному розумінні. Саме з її допомогою здійснюється управління сайтами, настройка пошти, доменних імен і т.п. Інтерфейс CPanel простий і зрозумілий навіть новачкові:

«З коробки» CPanel підтримує тільки веб-сервер Аpache. Підтримка інших веб-серверів реалізується за допомогою сторонніх плагінів і розширень, як пропрієтарних, так і вільних.
Щоб використовувати Nginx в якості фронтенда до Apache, можна, наприклад, вдатися до допомоги плагіна Nginx Admin. Для установки цього плагіна потрібно завантажити tar-архів, розпакувати його і запустити спеціалізований скрипт. Зауважимо, що в останніх версіях CPanel з установкою Nginx Admin можуть виникнути проблеми. Можна також скористатися розширенням ApacheBooster або пропрієтарним плагіном cPnginx. Підтримка зв'язки Nginx + php-fpm реалізується за допомогою плагіна cpXstack.
Завдяки тому, що CPanel орієнтована на роботу з веб-сервером Apache, вдається забезпечити широкі можливості для гнучкого налаштування і конфігурації. Гнучкість забезпечується за рахунок створення самостійного оточення з перезбирання в разі потреби. Робота з WHM вимагає від користувача певних знань і досвіду, але в більшості випадків налаштувань за замовчуванням цілком достатньо.
В останніх версіях (починаючи з 11.44) додана можливість централізованого управління з головного сервера іншими серверами з попередньо встановленою WHM, названа кластером конфігурацій (Cluster Configuration, подібна до подібним режимом в ISPConfig - див. Нижче). Можливості роботи в кластері розширюються; поступово додаються нові функції.
У числі безперечних переваг CPanel слід назвати підтримку широкого набору ПО, локалізацію на понад 20 мов, багаторівневе управління користувачами і розширену функціональність для реселлінга.
Зворотною стороною гнучкості настройки і управління виявляється більш низька (у порівнянні зі згаданими вище панелями) продуктивність.
З огляду на вартість ліцензування та мультисерверного підтримку, ця панель може бути рекомендована до використання насамперед реселлерам і тим, хто підтримує велику кількість різних сайтів.
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 - функції, які зустрічаються в основному у пропрієтарних продуктів.
Очевидним недоліком CPanel є складність підготовки сервера до установки і ручна настройка всіх компонентів. І хоча на на сайті howtoforge.com представлені докладні покрокові інструкції, всіх складнощів установки це не знімає.

висновок
У цій статті ми коротко розглянули кілька популярних і поширених панелей управління. Резюмуємо результати нашого огляду у вигляді такої таблиці (в таблиці представлена також додаткову інформацію, що дає більш повне уявлення про можливості розглянутих панелей: