🐹 CentOS 7: Установка Webmin — web-портал для управления системой Linux.
Содержание:
1. Что такое Webmin?
2. Подготовка сервера к установке.
3. Установка и запуск Webmin.
4. Если Webmin не работает.
5. Смена сертификата для HTTPS.
6. Итоговые выводы.
7. Оригиналы источников информации.
На чем было собрано:
- CentOS Linux x86_64 release 7.8.2003 (Core).
- Hypervisor Proxmox Virtual Environment 6.2-4.
1. Что такое Webmin?
Webmin — web-портал для управления системой Linux. С его помощью можно выполнять повседневные обязанности системного администрирования без необходимости вводить команды в строке shell. Его работа поддерживается во многих дистрибутивах Linux — в данной статье мы разберем установку и настройку на CentOS 7.
Webmin — это программный комплекс, позволяющий администрировать операционную систему через web-интерфейс, в большинстве случаев, позволяя обойтись без использования командной строки и запоминания системных команд и их параметров. Используя любой браузер, администратор сервера может создавать новые учётные записи пользователей, почтовые ящики, изменять настройки служб и сервисов, например: web-сервера Apache, DNS. Однако, в некоторых случаях необходимо знание операционной системы и редактирование конфигурационных файлов вручную. Кроме того, не все возможности операционной системы и не все программы можно конфигурировать через интерфейс Webmin, например nginx пока не входит в базовый набор.
Webmin состоит из простого web-сервера и большого количества скриптов (>500), которые собственно и осуществляют связь между командами администратора через web-интерфейс и их исполнением на уровне операционной системы и прикладных программ. Webmin написан полностью на языке Perl и не использует никаких дополнительных нестандартных модулей. Простота, лёгкость и быстрота выполнения команд — одно из самых больших преимуществ данной панели управления.
Другое важное преимущество — возможность исправлять конфигурационные файлы вручную, так как Webmin не «портит» конфигурационные файлы, в отличие от некоторых других панелей управления, и следует, как правило, политикам дистрибутивов по конфигурированию программ.
Данная панель управления бесплатна на условиях лицензии BSD распространяется для коммерческого и некоммерческого использования. Авторы этой программы позволяют всем желающим не только бесплатно использовать программу, но и изменять её по своему усмотрению.
Работать с Webmin достаточно просто — нужно запустить браузер, и по HTTPS набрать https://ваш_IP_адрес:10000/
и попасть на страницу администрирования.
Для Webmin доступны несколько десятков тем оформления, многие из которых уже входят в стандартный дистрибутив.
Webmin состоит из модулей, которые можно подключать или отключать по необходимости. На официальном сайте представлено более 300 модулей. Модули Webmin могут обеспечить настройку и управление почти всем функционалом сервера.
В стандартный набор дистрибутива Webmin:
- Apache Webserver — Настройка web-сервера Apache, позволяет редактировать почти все инструкции.
- Command Shell — Позволяет выполнить удаленно команду и просмотреть вывод.
- Custom Commands — Создание кнопки для часто используемых команд.
- DHCP Server — Управление общей сетью, хостами, и группами.
- Disk Quotas — Установка и настройка квот для пользователей или групп пользователей, на данной файловой системе.
- File Manager — Работа с файлами на сервере.
- GRUB Boot Loader — Настройка загрузчика GRUB.
- Linux Firewall — Настройка брандмауэра Linux.
- MySQL Database Server — Настройка базы данных, таблицы и разрешения на сервере баз данных MySQL.
- Perl Modules — Просмотр установленных Perl модулей и возможность установить новые.
- Running Processes — Список запущенных процессов в вашей системе с возможностью убить или изменять приоритет процесса.
- SSH Server — Настройка SSH сервера.
- Software Packages — Менеджер пакетов, с возможностью установить новые.
- System Logs — Настройка сервера системных журналов в вашей системе и просмотр журналов.
- Users and Groups — Создание и редактирование Linux пользователей и групп пользователей.
- Webmin Configuration — Настройки Webmin’а.
2. Подготовка сервера к установке.
По умолчанию, Webmin работает на 10000 порту, поэтому его нужно открыть в брандмауэре.
Если используем firewalld:
# firewall-cmd --permanent --add-port=10000/{tcp,udp}
# firewall-cmd --reload
Если используется iptables в системе, открываем нужные порты:
# mcedit /etc/sysconfig/iptables
-A INPUT -p tcp --dport 10000 -j ACCEPT
Перезапустим службу iptables:
# systemctl restart iptables
3. Установка и запуск Webmin.
В стандартных репозиториях CentOS7 программа Webmin отсутствует, поэтому добавим репозиторий с этой программой:
# mcedit /etc/yum.repos.d/webmin.repo
[Webmin] name=Webmin Repo baseurl=https://download.webmin.com/download/yum enabled=1 gpgcheck=0
где:
name
— произвольное название для репозитория;baseurl
— путь со списком пакетов для установки;enabled
— разрешает или запрещает использование репозитория (в данном примере разрешено);gpgcheck
— задает требование проверки ключа (в нашем случае ключ не требуется проверять).
Сохраним файл и выйдем из текстового редактора.
Устанавливаем Webmin командой:
# yum -y install webmin
Разрешаем автозапуск сервиса:
# chkconfig webmin on
Примечание: Программа Webmin не работает как юнит systemd, поэтому команда systemctl enable webmin
с ним не работают — при попытке включить автозапуск мы можем получить ошибку «Failed to start LSB: web-based administration interface for Unix systems». Просто пользуемся устаревающей chkconfig.
Запускаем службу:
# service webmin start
Внимание! Проверять наличие активной службы бесполезно, она не работает традиционным systemctl
способом:
# systemctl status webmin -l
Открываем браузер и переходим по HTTPS, по ссылке https://<IP-адрес компьютера>:10000/
— откроется предупреждение, что соединение не может быть безопасным.
Это происходит из-за использования самоподписного сертификата. Игнорируем предупреждение и переходим на наш сайт управления.
Откроется окно ввода логина и пароля — вводим root и его пароль
на сервере:
Нас поприветствует web-интерфейс программы:
4. Если Webmin не работает.
Если Webmin не открывается:
- проверяем, что система слушает запросы на порту 10000:
# ss -tunlp | grep 10000
Ответ:
- проверяем, что сервис работает:
# service webmin status
Ответ:
- проверяем, что мы добавили порт 10000 в брандмауэр:
# iptables -nvL --line-number
или
# firewall-cmd --list-all
Ответ:
... ports: 10000/tcp ...
5. Смена сертификата для HTTPS.
Если мы хотим использовать купленный или полученный у Let’s Encrypt сертификат, необходимо отредактировать ключ:
-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN PRIVATE KEY----- ... -----END PRIVATE KEY-----
Примечание:
- в секцию
BEGIN CERTIFICATE
вставляем последовательность для открытого ключа; - в секцию
BEGIN PRIVATE KEY
— закрытого.
Перезапускаем webmin:
# service webmin restart
6. Итоговые выводы.
Вы также можете управлять более чем одной системой Linux с помощью функции кластера Webmin. По сути, установите Webmin в каждой системе Linux, а затем добавьте каждую из этих систем в кластер.
Раньше Webmin был популярным приложением среди новых системных администраторов, которые боялись командной строки.
В наши дни доступны лучшие инструменты, такие как Puppet, Chef, Ansible, которые упрощают настройку, развертывание и управление несколькими серверами Linux. Несмотря на то, что для этих инструментов автоматизации требуется обучение, Webmin прост в использовании.
7. Оригиналы источников информации.
- break-people.ru «Webmin по-русски».
- dmosk.ru «Установка Webmin на Linux CentOS».
- pro-spo.ru «Администрирование Linux. Введение в Webmin».
- ru.wikipedia.org «Webmin».
- andreyex.ru «Установка и настройка Webmin для удаленного и графического управления серверами Linux».