Делаем сервер на Linux удобнее. Часть 2. Используем web интерфейс (Webmin)
В предыдущей статье рассматривалось использование графической оболочки для оптимизации работы с сервером под управлением Linux. Но, что делать, если её применение по тем или иным причинам не целесообразно? Выполнять работу в консоли?
К счастью для Linux существует ещё одна альтернатива – web интерфейс.
Специально для администрирования Linux была разработано приложение Webmin. Оно представляет собой простой web сервер и набор скриптов на языке Perl, которые и обеспечивают функционал web интерфейса.
Установка Webmin
Информация о репозитории для установки Webmin в системе изначально отсутствует. Поэтому, её необходимо предварительно добавить.
Для этого необходимо открыть файл /etc/apt/sources.list и дописать в его конце следующую строку:
После сохранения файла обновляем кэш пакетов.
Теперь можно запустить установку Webmin при помощи команды:
После установки Webmin автоматически запускается. Страница входа доступна по адресу сервера через порт 10000 (адрес_сервера:10000)
Вход в систему осуществляется с помощью учётных данных локального пользователя, который имеет административные привилегии.
Работа с Webmin
После входа в систему попадаем на стартовую страницу Webmin.
Эта страница содержит краткую информацию о системе (версия Webmin, тип процессора, используемая память, занятое пространство на диске и т.д.) и главное меню (расположено слева).
Webmin это достаточно сложное программное обеспечение со множеством модулей и функций и, даже при всём желании, работу с ним невозможно полностью описать в рамках одной статьи. Поэтому кратко остановимся только на основных деталях.
Главное меню состоит из нескольких разделов:
- Webmin
Настройки непосредственно Webmin; - System
Информация о системе и системные настройки (пользователя, процессы, службы и т.д.); - Servers
Управление установленными серверами (web серверы, серверы БД и т.д.) - Others
Средства администрирования не вошедшие в другие разделы (файловый менеджер, окно консоли и т.д.); - Networking
Сетевые настройки; - Hardware
Управление аппаратным обеспечением (системное время, управление дисками, принтерами и т.д.); - Cluster
Управление несколькими серверами объединёнными в кластер. Webmin устанавливается только на одном из них. Работа с остальными осуществляется по протоколу RPC; - Un-usedmodules
Неиспользуемые модули Webmin. Модули, которые были установлены, но для их работы на сервере отсутствуют необходимые компоненты. Если эти компоненты будут впоследствии установлены для подключения нужных модулей необходимо выполнить обновление модулей («Refresh Modules»); - Search
Внутренний поиск Webmin; - ViewModule’sLogs
Журналы изменений модулей Webmin; - SystemInformation
Краткая информация о системе. Является стартовой страницей при входе в систему. - RefreshModules
Обновление модулей Webmin. Изменения вступят в силу только после выхода и повторного входа в систему; - Logout
Выход из системы.
Файловый менеджер
Файловый менеджер доступен по ссылке «File Manager» в разделе «Others» главного меню.
При открытии файлового менеджера отображается корневой каталог файловой системы. С помощью гиперссылок можно заходить в те или иные папки и открывать или загружать к себе на компьютер файлы.
На скриншоте ниже показана директория «Документы» в домашней директории одного из пользователей.
Данный файловый менеджер позволяет выполнять лишь простейшие операции. Создание каталогов и текстовых файлов, редактирование текстовых файлов, создание архивов, распаковка архивов (при наличии, например, unzip), загрузка файлов с компьютера на сервер и наоборот.
Также стоит отметить возможность с помощью интерфейса файлового менеджера изменять владельцев файлов и папок и права доступа к ним.
Это особенно актуально, если учесть, что файлы и папки создаются с владельцем по умолчанию root:root и правами доступа 755 и 644 соответственно.
Безусловно, с точки зрения безопасности не стоит давать полный доступ всем желающим. Но, использование владельца по умолчанию может также вызывать различные неполадки. Например, при отсутствии у web сервера прав на запись, в каталоге с сайтом многие web приложения могут работать некорректно или не работать вообще.
Поэтому стратегия доступа к файловой системе должна быть должным образом продумана.
Работа с консолью
Для работы с консолью служит страница «Text Login» в разделе «Others».
Поле чёрного цвета в точности имитирует работу консоли Linux.Поэтому, если необходим доступ к обычной консоли, Webmin предоставляет и такую возможность.
При помощи кнопки «Open in separate window …» можно открыть «консоль» в отдельном окне браузера.
Работа с Apache
Модуль для работы с Apache доступен в разделе «Servers» главного меню по ссылке «Apache Webserver».
На стартовой странице модуля можно увидеть список всех имеющихся виртуальных хостов.
При клике на значок рядом с названием хоста откроется страница его настроек.
По сути это не что иное, как web интерфейс для работы с конфигурационными файлами хоста. С его помощью можно настроить все его параметры, включая перенаправления (редиректы), отслеживание ошибок, ограничения ресурсов (хорошо знакомы пользователям виртуального хостинга) и т.д.
При желании также можно отредактировать конфигурационный файл хоста вручную («Edit Directives»).
Вкладка «Create virtual host» служит для создания нового виртуального хоста и содержит основные настройки.
После создания виртуального хоста он будет отображаться в общем списке на главной странице модуля и можно будет выполнить его более тонкую настройку.
Вкладка «Global configuration» содержит общие настройки Apache.
В частности, можно отредактировать конфигурационные файлы сервера («Edit Config Files»), изменить имя и группу пользователя, которые используются для работы Apache («User and Group»),подключить или отключить дополнительные модули Apache («Configure Apache Modules»).
Работа с MySQL
Модуль для работы с Apache доступен в разделе «Servers» главного меню по ссылке «MySQL Database Server».
Интерфейс модуля интуитивно понятен.
На главной странице можно настроить общие параметры MySQL или создать либо удалить базу данных.
При клике на значок базы данных откроется страница с перечнем её элементов.
Встроенный визуальный редактор позволяет создавать таблицы и представления (view).
В случае необходимости также можно выполнить и произвольный SQL запрос (кнопка «Execute SQL»).
Запрос можно написать вручную, а можно загрузить из SQL скрипта. Это позволяет без особого труда восстановить базу данных из резервной копии.
Также поддерживается возможность создания резервных копий.
Резервная копия сохраняется в SQL скрипта, но имя файла вместе с расширением необходимо указать явно.
В целом модуль для работы с MySQL по своим возможностям ненамного уступает phpMyAdmin. Поэтому работая с Webmin в большинстве случаев можно даже отказаться от этого приложения.
Русификация Webmin
При необходимости Webmin можно легко русифицировать.
Для того чтобы изменить язык интерфейса в Webmin необходимо перейти по ссылке «Change Language and Theme». Затем установить переключатель «Webmin UI language» в положение «Personal choice» и выбрать из раскрывающегося списка пункт «Russian (RU.UTF-8)».
После нажатия кнопки «Make changes» изменения вступят в силу, но визуально они будут отображены только после полной перезагрузки страницы.
Также стоит отметить, что не все компоненты имеют поддержку русского языка. По крайней мере, полную.
Например, модуль для работы с MySQL русифицирован только частично.
Резюме
Приложение Webmin позволяет не только выполнять задачи по общему администрированию серверов под управлением Linux, но также способно заменить собой целый ряд программ.
Однако, его функционал значительно ограничен возможностями тех модулей, которые установлены в системе.
Кроме того Webmin значительно уступает обычным графическим оболочкам не только в отношении расширяемости, но и функционала. Всё-таки web интерфейс остаётся web интерфейсом. Но, если в случае графической оболочки для удалённого администрирования необходимо устанавливать дополнительно VNC или RDP сервер и соответствующий клиент на компьютере администратора, то Webmin не требует ничего кроме браузера.
Благодаря этому вкупе со своей функциональностью и простотой установки приложение Webmin и завоевало широкую популярность.
Webmin не является исключающей альтернативой графическим оболочкам и даже может работать параллельно с ними. Выбор конкретной среды для работы с сервером вопрос скорее удобства и конкретных рабочих обстоятельств.