Сегодня никого не удивишь гетерогенной сетью, и виндовому админу нередко приходится в срочном порядке осваивать *nix, пробираясь сквозь дебри конфигов и команд. Что делать, если не хватает знаний, появилась насущная необходимость делегирования части функций другим админам и/или пользователям? В таких ситуациях сильно выручают веб-панели управления, о которых и пойдет речь в этой статье.

 

Ajenti: управление Linux-сервером

Визитной карточкой панели Ajenti (ajenti.org) служит приятный интерфейс, реализованный с использованием AJAX. Мы получаем понятную среду, не перегруженную установками и настройками, в которой легко освоится администратор, имеющий относительно небольшой опыт. Архитектура модульная, в настоящее время доступны плагины, позволяющие производить настройку и мониторинг самой системы и некоторых популярных сервисов:

  • системных параметров — сети и UPS/питания, пакетных менеджеров (APT, Zypper, Pacman), учетных записей пользователей и групп (/etc/passwd и /etc/group), заданий cron, монтирования дисковых разделов (/etc/fstab), работы upstart, rc.d, init.d и lm-sensors, настройка DNS (/etc/resolv.conf и /etc/hosts), правил Netfilter, просмотр журналов;
  • серверов и сервисов — веб (Apache 2, nginx и lighttpd), Samba, MySQL, PostgreSQL, DHCPD, BIND9, NFSD, Squid и SARG, Bacula и других.

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

 

INFO

В настоящее время Ajenti предлагается многими хостерами для удобной настройки пользователями своих VDS.

FreePBX обслуживает более чем 500 000 активных телефонных систем.

Реализован вывод в наглядной форме различной статистической информации по системе: загрузки процессора, ОЗУ и сетевых интерфейсов, состояния swap, uptime и некоторых других. Если штатных возможностей недостаточно, то предусмотрены терминал, shell для запуска отдельных команд, файловый менеджер, редактор конфигурационных файлов и блокнот.

Официально поддерживаются Debian, Ubuntu (12.04, но работает и в более поздних), RHEL и CentOS. Для этих систем имеются готовые пакеты или репозитории, при помощи которых не составляет проблем установить Ajenti. Для остальных доступен исходный код.

$ wget http://repo.ajenti.org/debian/key -O- | sudo apt-key add -
$ sudo echo "deb http://repo.ajenti.org/ng/debian main main ubuntu" >> /etc/apt/sources.list
$ sudo apt-get update
$ sudo apt-get install ajenti
$ sudo service ajenti restart

В процессе установки будет сгенерирован самоподписанный SSL-сертификат, и в консоли появится информация для входа. Доступ к интерфейсу Ajenti можно получить, подключившись браузером к https://localhost:8000, логин/пароль для входа: root/admin (сразу поступает предложение его сменить). В случае проблем Ajenti можно запустить в режиме отладки командой ajenti-panel -v.

Далее необходимо настроить панель под себя: локализовать, указать другой порт или IP, который будет слушать сервер, разместить виджеты на Dashboard. Плагины подхватываются автоматически, следует лишь проверить их состояние. Значок с восклицательным знаком подскажет, что требуется доустановка дополнительных пакетов, в подсказке дается их название и ссылка для установки через браузер. Для некоторых из виджетов предстоит указать дополнительную информацию — сетевой интерфейс или название сервиса. Виджеты можно затем перемещать, просто захватив их мышкой; чтобы удалить один из них, требуется захватить его, потащить вниз и сбросить в появившуюся корзину (или через правку конфигурационного файла /etc/ajenti/ajenti.json). Ajenti использует собственную базу учетных записей, кроме того, есть возможность синхронизации с системными файлами или LDAP.

Веб-панель управления сервером Ajenti
Веб-панель управления сервером Ajenti
 

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

ISPConfig — панель управления хостингом для Linux, которая позволяет настраивать новые веб-сайты, аккаунты электронной почты (POP3, IMAP — Courier, Dovecot), FTP (PureFTPd), записи DNS (BIND, MyDNS), MySQL и виртуализацию OpenVZ. При помощи одного интерфейса поддерживается управление несколькими физическими серверами. Обеспечивает настройку виртуального хостинга на основе IP или доменных имен для Apache2 или nginx, работает с PHP через mod_php, suPHP, fastcgi или PHP-FPM. Поддерживает настройки для FTP, SFTP, SCP и для Apache2 Ruby, Python и WebDAV, реализована проверка на спам (whitelists, blacklists, проверка заголовков и контент-фильтр) и вирусы для входящей почты, email-автоответчик, сбор статистики (Webalizer и/или AWStats), настройка firewall (UFW или bastille), выполнение заданий по расписанию (cron, jailed cron, web cron). Возможно использование shell-доступа для пользователей (обычный и jail), SFTP, SCP, авторизация по паролю или ключу. Для DNS-сервера возможно создание записей типа A, AAAA, ALIAS, CNAME, HINFO, MX, NS, PTR, RP, SRV, TXT. Поддерживает IPv4 и IPv6.

Клиенты могут управлять базами данных MySQL при помощи утилиты phpMyAdmin.

Функциональность расширяется при помощи аддонов, правда, некоторые из них предлагаются за дополнительную плату. На сегодня предложен биллинг-модуль, приложение для мониторинга работы на Android (Monitor App for Android), плагины RoundCube, SquirrelMail, Exchange и VMware.

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

Предлагается три уровня пользователей — администраторы, реселлеры и клиенты. Учетная запись администратора создается автоматически при установке, она имеет полный контроль над всеми функциями. Администратор может устанавливать квоты на дисковое пространство и отправку email-сообщений, указывать ограничения по трафику. При необходимости возможно тонко задать уровень доступа вплоть до отдельного модуля. Реселлеры — это пользователи, которые продают услуги для своих клиентов (в пределах установленных ограничений), не беспокоясь об инфраструктуре системы управления администратором, и могут иметь доступ ко всем модулям, кроме конфигурации системы.

ISPConfig может работать в кластере или в режиме зеркала (подчиненный сервер резервирует настройки основного).

Большой плюс этой панели в том, что она устанавливается практически на все дистрибутивы Linux. На сайте доступны инструкции для Ubuntu 7.10–13.10, Debian 4–6, CentOS 5.2–6.3, Fedora 9–15, openSUSE 11–12.2. Первые два являются рекомендуемыми.

ISPConfig позволяет при помощи одного интерфейса управлять несколькими физическими серверами
ISPConfig позволяет при помощи одного интерфейса управлять несколькими физическими серверами
 

Виртуализация с Archipel

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

Archipel — масштабируемое решение для удобного управления с помощью графического интерфейса гипервизорами и виртуальными машинами, размещенными на локальном и удаленных физических серверах. Для обмена сообщениями используется протокол XMPP, это позволяет Archipel работать в реальном времени, все ответы хостов или систем сразу отображаются в интерфейсе. К тому же для управления системами также можно использовать любые XMPP-клиенты.

Состоит из двух частей: интерфейса, написанного при помощи JavaScript, и агента, который установлен на все гипервизоры KVM, Xen, OpenVZ или VMware. Для запуска интерфейса понадобится любой веб-сервер и сервер ejabberd (XMPP). Модули PHP, Ruby или SQL базы данных не требуются. Возможно использование нескольких XMPP как реплики или различные точки доступа. Интерфейс позволяет оценить состояние всех VM, собранных в одном месте, при большом их количестве отобрать нужные можно при помощи фильтров. Новые VM создаются буквально одним кликом. При этом новым VM имя может быть дано автоматически (вместо непонятного сочетания букв и цифр используются астероиды Солнечной системы). Существующие VM легко подключить к интерфейсу управления, для этого на гипервизор достаточно установить агент. Поддерживаются все основные команды управления VM (старт/стоп/пауза), управление сетью, DHCP, планировщик, снапшоты и Live migration на другой хост. Выводится статистика в реальном времени об использовании памяти, загрузке CPU, месте на диске, средней загрузке и прочем. Журналы и модуль Health позволяют быстро найти причину проблем. К удаленным системам можно подключаться при помощи встроенного VNC-клиента (JavaScript). Виртуальные машины можно упаковать в пакеты и перенести на другой узел.

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

Поддерживаются все основные дистрибутивы Linux. Агенты протестированы на Fedora, CentOS, Ubuntu, Debian, Gentoo, ArchLinux, Mandriva и Slackware. Также разработчики предлагают готовый LiveCD-дистрибутив ANSOS (Archipel Node Stateless OS) в двух версиях на базе Fedora и CentOS, основной которого является oVirt Node, позволяющий быстро развернуть хост.

Установка для подготовленного админа не вызовет сложностей, хотя документация проекта не во всех моментах подробна и понятна.

 

GOsa: управление пользователями и системами

Сегодня доступны проекты, которые предоставляют администратору единый центр управления всей ИТ-инфраструктурой. Одним из самых продвинутых решений можно назвать GOsa2, который представляет собой LDAP-ориентированную систему, позволяющую управлять учетными записями *nix и Samba, правами пользователей и групп, компьютерами, списками рассылок, телефонами и факсами, приложениями и настройками основных сетевых служб: DHCP, DNS, HTTP, SMTP и многих других.

Возможностей много, но для удобства все функции вынесены в плагины, поэтому конфигурация собирается под конкретные требования и не содержит ничего лишнего. В настоящее время реализовано более 30 плагинов, обеспечивающих управление такими сервисами, как Squid, DansGuardian, Postfix, Courier-IMAP, Maildrop, GNARWL, Cyrus-SASL, OpenSSL, ISC DHCP, WebDAV, PureFTPd, PPTP, Kerberos, Asterisk, Nagios, OPSI, Netatalk, FAI, rsyslog, серверами коллективной работы — SOGo, OpenGroupware, Kolab, Scalix. Все сервисы могут работать на разных серверах.

Учетные записи пользователей объединяются в группы, которым назначаются разрешенные приложения. При создании новых аккаунтов применяются шаблоны с прописанными правами доступа к объектам. Набор разрешений ACL состоит из типа, определяющего видимость, объектов (пользователей/групп) и разрешений. Разрешения определяют все возможные действия — создание, удаление, перемещение, чтение, запись и так далее. Интерфейс локализован, настройки сводятся к заполнению предложенных параметров, поэтому ошибиться трудно.

Поддерживается установка на любой дистрибутив Linux, разработчики рекомендуют Debian, под который создан свой репозиторий. Также доступны пакеты для RedHat/CentOS/Fedora и openSUSE/SLES, но, как правило, разработчики не спешат их собирать, поэтому обычно представлена не самая последняя версия. В качестве веб-сервера может использоваться любой, предпочтение отдается Apache 2 или ngnix.

GOsa2 позволяет управлять учетными записями и правами пользователей
GOsa2 позволяет управлять учетными записями и правами пользователей
 

IP-телефония с FreePBX

Настройка VoIP-сервера Asterisk осуществляется при помощи десятка конфигурационных файлов, имеющих множество параметров. Разобраться во всем этом многообразии непросто даже профи, что уж говорить о новичках. Вот здесь и выручит FreePBX, предлагающий для конфигурирования и управления простой и интуитивно понятный веб-интерфейс, распространяемый по лицензии GNU GPL.

Интерфейс состоит из шести вкладок с большим количеством подпунктов. Администратору необходимо лишь заполнить предложенные поля или установить переключатель True/False и таким образом быстро создать внутренние номера, транки, настроить маршрутизацию звонков, приветствие и голосовое меню, режимы обработки звонков (дневной, вечерний, ночной), Music On Hold, автоответчик, использовать CLI, настроить модули Asterisk и многое другое. Обычные пользователи могут обратиться к User Panel для прослушивания сообщений голосовой почты, получения информации о разговорах и справки по сервисным функциям.

Возможности расширяются при помощи модулей (платных и бесплатных) сторонних разработчиков. Для удобства поиска предлагается FreePBX Market Place. Установка стандартна для LAMP-приложений, необходимо создать базу MySQL и настроить виртуальный сайт в Apache. Документация проекта вполне достаточна и помогает разобраться во всех тонкостях. Также разработчики предлагают дистрибутив, построенный на базе CentOS, с преднастроенным FreePBX, который можно использовать для быстрого развертывания PBX-станции. Процесс установки дистрибутива полностью автоматизирован, потребуется только ввести настройки сети. Он легко настраивается для работы в HA-кластере, в процессе можно выбрать версию Asterisk 11 или 1.8. В комплекте также поставляется iSymphony Call Manager — Java-панель оператора, позволяющая управлять вызовами Asterisk.

FreePBX заметно упрощает настройку VoIP-сервера Asterisk
FreePBX заметно упрощает настройку VoIP-сервера Asterisk
 

Биллинговая система ABillS

Биллинговых систем для Linux разработано предостаточно, правда, выбрать подходящую из имеющихся довольно сложно. Некоторые проекты ориентированы на весьма специфические, узкие задачи, другие требуют ручной доработки, некоторые уже заброшены. Наибольшей популярностью пользуется AsmodeuS Billing System. Назначение ABillS — учет и тарификация всего спектра услуг, предоставляемых операторами связи (Dial-up, VPN, Hotspot, VoIP, IPTV и прочее). Реализовано несколько методов тарификации по времени и трафику, с изменением стоимости по времени суток и классификацией трафика, установкой лимитов (дневной, недельный и так далее, общий) и управлением скоростью. Абонентскую плату можно снимать ежедневно, ежемесячно или раз в год, реализована бонусная система, возможна предоплата или постоплата. Предусмотрена работа с бухгалтерскими документами и несколькими платежными системами (WebMoney, RBMoney, SMSProxy и другими). Возможен мониторинг количества активных сессий и трафика, проходящего через интерфейс, при помощи MRTG. Система позволяет управлять различными сервисами (например, DHCP, Mail), экономя время администраторов. Реализована возможность массовой рассылки сообщений абонентам, поддержка нескольких доменов, подключение через несколько точек доступа, управление аппаратными решениями различных производителей (Cisco, Zyxel, D-Link), техподдержка, миграция с других систем и многое другое. Пользователи авторизируются по PAP, CHAP, MS-CHAP, MS-CHAPv2, EAP и IEEE 802.1x, возможна привязка IP к МАС-адресу. Несколько готовых отчетов и мастер отчетов позволяют быстро получить нужную информацию в удобной форме.

Модульная система дает возможность легко нарастить функциональность. В поставке идут только базовые модули, остальные доступны за дополнительную плату. Также за плату осуществляется техподдержка. Для управления и получения данных отдел продаж использует веб-интерфейс: администратора, пользователя и дилера. Доступен интерфейс самостоятельной регистрации клиентов (User Autoregistration using Web Interface).

ABillS написана на Perl и для работы использует такие популярные open source решения, как Apache, MySQL и FreeRADIUS. Возможна установка не только на *nix, но и на Windows.

Последняя актуальная версия 0.55 вышла в конце ноября 2013 года. Номер релиза далек от мажорной, тем не менее проект вполне стабилен и уже давно используется многими провайдерами. Параллельно разрабатывается коммерческая версия ABillS 0.6, которая сертифицирована в РФ.

Подключение нового клиента в биллинговой системе ABillS
Подключение нового клиента в биллинговой системе ABillS
 

Управление файловым сервером с помощью napp-it

Сегодня ни одна сеть не может функционировать без СХД, соответственно, возникает задача управления массивами данных, списками доступа, квотами и прочим. Веб-интерфейс napp-itявляется надстройкой над хранилищем ZFS.

Реализованы все функции ZFS: репликация, ACL, квоты, снапшоты, Raid Z3, шифрование, сжатие и другие. Кроме того, доступно управление службами, заданиями (с отправкой результата и предупреждений на email), настройка iSCSI, оценка производительности (на основе bonnie++), управление учетными записями и группами (Solaris и SMB). С помощью интерфейса можно управлять CIFS/SMB (AD/Workgroup с поддержкой ACL), ProFTPD, NFS Server 3/4, SSH, настройками IP Filter, MySQL, Apache2 и медиасервером MediaTomb.

Napp-it распространяется в четырех версиях. Вариант Free можно использовать без ограничений в SOHO. Для установки в Nexenta/Illumian, Solaris Express, OpenIndiana и прочих производных от Solaris достаточно скачать и выполнить Perl-скрипт:

# wget -O - www.napp-it.org/nappit | perl

Кроме того, napp-it поставляется в виде образа для ESXi, аппаратного устройства. Специальная версия napp-it to Go позволяет загрузиться с USB-флешки и настроить NAS.

Интерфейс napp-it
Интерфейс napp-it
 

WWW

 

Вывод

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

 

Коммерческие панели управления

В первую очередь коммерческие панели управления предлагают разработчики коммерческих Linux. Например, в дистрибутиве RHEL/Fedora в качестве средства централизованного управления предлагается RHN Satellite, в основе которого лежит Spacewalk, распространяемый бесплатно под лицензией open source. С его помощью можно централизованно управлять файлами конфигурации, автоматизировать установку и обновление ПО, управлять работой виртуальных машин и cloud-окружений, осуществлять мониторинг, производить инвентаризацию оборудования и ПО, автоматизировать установку типовых конфигураций ОС, организовать сетевую загрузку и другие задачи. Однако RHN Satellite уже не удовлетворяет современным требованиям, и на замену планируется платформа управления гибридным облаком CloudForms и ее открытый вариант Katello. Сам CloudForms содержит три компонента, назначение которых понятно из названия: System Engine, Application Engine и Cloud Engine. На основе Spacewalk компания Novell разработала свою систему для управления инфраструктурой Linux-серверов SUSE Manager, которая обладает теми же возможностями, но поддерживает еще и линейку SUSE Linux.

У нас наиболее популярны четыре коммерческие панели управления хостингом: Plesk, CPanel,ISPmanager и InterWorx. Функции их, в общем-то, во многом схожи и позволяют управлять сервером и виртуальными хостами через веб-интерфейс. Многие стандартные задачи автоматизированы, что упрощает администрирование. Поддерживается работа в кластере, возможность расширения через плагины и многое другое. Конечно, есть и различия. Например, InterWorx предоставляет больше возможностей для управления самим сервером (сервисы, firewall, cron, сертификаты и прочее). Более полную информацию можно просмотреть на сайтах производителей (например, в таблице и по ссылке).

По сравнению с конкурентами, InterWorx предоставляет больше возможностей по настройке сервера
По сравнению с конкурентами, InterWorx предоставляет больше возможностей по настройке сервера

 

1 комментарий

  1. VitaliyYanchuk

    25.01.2016 at 16:16

    очень классный обзор, реально спасибо! только нигде не пишут, как собирать статистику с этих панелей. вообще информации практически никакой, мне удалось только блог найти https://shneider-host.ru/blog/awstats-sredstvo-sbora-statistiki-v-cpanel.html, но это капля в море, честно говоря… было бы хорошо и у вас такую информацию найти!

Оставить мнение

Check Also

Tips’n’Tricks из арсенала андроидовода. Самые интересные, полезные и нестандартные трюки с Android

Многие годы мы рассказывали про самые разные способы оптимизировать, модифицировать и твик…