Web интерфейс для управления linux

Делаем сервер на 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), загрузка файлов с компьютера на сервер и наоборот.

Читайте также:  Kdialog linux что это

Также стоит отметить возможность с помощью интерфейса файлового менеджера изменять владельцев файлов и папок и права доступа к ним.

Это особенно актуально, если учесть, что файлы и папки создаются с владельцем по умолчанию 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)».

Читайте также:  Драйвера для nvidia fx 5700le драйвер windows

После нажатия кнопки «Make changes» изменения вступят в силу, но визуально они будут отображены только после полной перезагрузки страницы.

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

Например, модуль для работы с MySQL русифицирован только частично.

Резюме

Приложение Webmin позволяет не только выполнять задачи по общему администрированию серверов под управлением Linux, но также способно заменить собой целый ряд программ.

Однако, его функционал значительно ограничен возможностями тех модулей, которые установлены в системе.

Кроме того Webmin значительно уступает обычным графическим оболочкам не только в отношении расширяемости, но и функционала. Всё-таки web интерфейс остаётся web интерфейсом. Но, если в случае графической оболочки для удалённого администрирования необходимо устанавливать дополнительно VNC или RDP сервер и соответствующий клиент на компьютере администратора, то Webmin не требует ничего кроме браузера.

Благодаря этому вкупе со своей функциональностью и простотой установки приложение Webmin и завоевало широкую популярность.

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

Источник

Cockpit: веб-интерфейс управления сервером CentOS/RHEL

В этой статье мы рассмотрим, как установить и использовать веб-интерфейс управления сервером Cockpit Web Console в CentOS 8 (применимо для Red Hat, Fedora, Ubuntu, Debian, Arch). Мы рассмотрим базовые возможности данной консоли, и покажем, как через простой и удобный веб-интерфейс cockpit выполнять типовые задачи администрирования и мониторинга ваших серверов. Для тех, кто только начинает разбираться с CentOS, данная web-консоль станет незаменим помощником в администрировании сервера.

Основные возможности web-интерфейса управления сервером cockpit:

    • Управление учетными записями
    • Мониторинг системы
    • Обновление ПО
    • Просмотр лог-файлов
  • Сетевые настройки
  • Управление виртуальными машинами KVM

    Установка Cockpit в CentOS

    Перед установкой пакета cockpit нужно обновить все пакеты в системе:

    После чего, можно установить непосредственно сам cockpit через менеджер пакетов:

    # dnf install cockpit –y

    При запуске команды, система предложит установить cockpit и все зависимости.

    После установки, нужно запустить сервис cockpit и добавить его в автозагрузку:

    # systemctl start cockpit.socket
    # systemctl enable cockpit.socket

    Для доступа к web-интерфейс нужно открыть на файерволле порт TCP 9090. Для firewalld это выполняется через добавление сервиса в исключения:

    # firewall-cmd —add-service=cockpit —permanent
    # firewall-cmd —reload

    # iptables -A INPUT -m state —state NEW -p tcp —dport 9090 -j ACCEPT
    # service iptables save && service iptables restart

    Использование веб-интерфейса cockpit для управления CentOS

    Откройте веб-консоль Cockpit в браузере, перейдя по адресу:

    IP — адрес вашего сервера с cockpit

    Для авторизации в Cockpit используются локальные учетные записи в CentOS. Можно авторизовать под root.

    При авторизации в интерфейсе Cockpit, на главной странице вы можете увидеть монитор производительности сервера:

    В динамических графиках показывается текущая нагрузка на основные ресурсы вашего сервера:

    1. Загрузка CPU
    2. Использование памяти
    3. Нагрузка на дисковую подсистемы (не в IOPS, а в KiB/s)
    4. Cетевую активность

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

    С левой стороны панели, есть меню. Некоторые пункты мы рассмотрим подробно:

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

    В разделе сеть, вы можете управлять сетевыми настройками и правилами файерволла:

    Как видите, у нас есть 3 правила, которые можно просмотреть или изменить, в панели вы так же можете добавить новые правила:

    Т.е. если вы неуверенно чувствуете себя в консоли, вы можете настроить правила файервола через web-интерфейс.

    Помимо настроек файерволла, вы можете управлять настройками сетевых интерфейсов (изменить VLAN на сервере, файл конфигурации сети, добавить мост и т.д.):

    Создать дополнительного пользователя для вашего сервера можно в несколько кликов:

    Можете через консоль убедиться, что пользователь создан:

    ]# cat /etc/passwd | grep tes

    В разделе службы, вы можете настраивать и управлять сетевыми сервисами.

    Если вы откроете любой сервис, можно увидеть все настройки:

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

    На вкладке “Программные обновления” можно включить управлять установкой обновлений CentOS и пакетов из подключенных репозиториев.

    Можно включить автоматическое обновление системы (выполняется через пакет dnf-automatic).

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

    Если вас не устраивает вариант с автоматическим обновлением, вы можете их устанавливать в ручную.

    В консоли если удобный веб-терминал, для работы с сервером из привычного shell для запуска команд:

    Если у вас используется SELinux, им также можно управлять через cockpit.

    Если с главной страицы веб интерфейса щелкнуть по графику дисковой активности, появится веб интерфейс для управления дисками (Storage). где вы можете создать или перенастроить LVM разделы, настроить RAID группы или подключить iSCSI устройства.

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

    В Cockpit можно управлять сразу множеством серверов CentOS/RHEL. Для этого нужно добавить необходимые сервера в Machines dashboard.

    Cockpit: управление контейнерами через podman

    Для работы с контейнерами на сервере, для cockpit существует отдельный плагин podman (в ранних релизах исопльзовался docker). Установите пакет:

    # dnf install cockpit-podman -y

    После чего нужно загрузить нужные образы, например, CentOS 8:

    # podman pull centos:8

    Проверьте, что образ загрузился:

    Перезапустите сервис cockpit:

    # service cockpit restart

    Вы увидите, что панели появится модуль Podman containers:

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

    Управление KVM через веб-интерфейс cockpit

    Для работы KVM на сервере с установленным cockpit есть дополнительный плагин:

    # dnf install cockpit-machines -y

    После его установки в web-интерфейсе появится отдельная вкладка Virtual Machines:

    После запуска libvirt, вы можете создавать виртуальные машины и управлять ими через уже интерфейс cockpit. Например, можно создать новую ВМ:

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

    Таким образом, для того, чтобы работать с KVM вам не требуется установка какой-то отдельной панели (типа virt-manager) или выполнения команд virsh.

    Теперь администрирование вашего сервера станет еще проще. Установите cockpit и используйте его возможности на максимум.

    Источник

    Читайте также:  Включение windows без биос
Оцените статью