Установка Webmin на сервер Debian 10

Webmin – это веб-консоль для управления машинами Linux. Webmin позволяет быстро менять настройки основных пакетов (веб-серверов, баз данніх и т.д.), а также управлять пользователями, группами и программным обеспечением.

Данный мануал поможет установить и настроить Webmin на сервере Debian 10,  защитить консоль с помощью сертификата Let’s Encrypt, добавить через Webmin новую учётную запись и обновить пакеты сервера.

Требования

  • Сервер Debian 10, настроенный по этому мануалу.
  • Веб-сервер Apache (инструкции по установке можно найти здесь). Apache будет использоваться для проверки домена сервисом Let’s Encrypt и в качестве прокси для Webmin. Убедитесь, что вы открыли доступ к Apache в брандмауэре.
  • FQDN и запись A, указывающая на IP-адрес сервера. Читайте мануал Как настроить имя хоста.

1: Установка Webmin

Добавьте репозиторий Webmin, с помощью которого можно установить и в дальнейшем обновлять консоль. Его нужно добавить в файл /etc/apt/sources.list.

Откройте файл:

sudo nano /etc/apt/sources.list

В конец файла добавьте эту строку, чтобы добавить новый репозиторий:

. . .
deb http://download.webmin.com/download/repository sarge contrib

Сохраните и закройте файл.

Добавьте PGP-ключ Webmin, чтобы система знала, что новому репозиторию можно доверять. Для этого нужно сначала установить пакет gnupg1.

Обновите индекс пакетов и установите gnupg1:

sudo apt update
sudo apt install gnupg1

Затем загрузите PGP-ключ Webmin с помощью wget:

wget http://www.webmin.com/jcameron-key.asc

Добавьте ключ пакета:

sudo apt-key add jcameron-key.asc

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

sudo apt update

Установите Webmin:

sudo apt install webmin

После завершения установки вы увидите вывод:

. . .
Webmin install complete. You can now login to
https://your_server:10000 as root with your
root password, or as any user who can use sudo.

Скопируйте эту информацию, она понадобится вам в дальнейшем.

Примечание: Если вы установили ufw, вам нужно выполнить команду:

sudo ufw allow 10000

чтобы открыть Webmin в брандмауэре. Для дополнительной безопасности вы можете настроить брандмауэр для доступа к этому порту только из определенных IP-диапазонов.

Теперь нужно защитить Webmin с помощью TLS/SSL-сертификата для Apache.

2: Защита Webmin с помощью доверенного сертификата Let’s Encrypt

Webmin уже поддерживает HTTPS, но использует самоподписанный сертификат, а не доверенный. Давайте заменим его подписанным сертификатом от сервиса Let’s Encrypt.

Перейдите по ссылке:

https://your_domain:10000

Замените your_domain доменным именем вашего сервера.

Примечание: При первом входе в систему вы увидите ошибку «Invalid SSL». Это связано с тем, что сервер создал самоподписанный сертификат. Примите этот сертификат как исключение, чтобы продолжить и заменить самоподписанный сертификат доверенным сертификатом от Let’s Encrypt.

Появится экран входа в систему. Войдите в систему с помощью аккаунта пользователя (не root), который вы создали при начальной настройке сервера.

После входа первое, что вы увидите – это панель Webmin. Прежде чем вы сможете применить доверенный сертификат, вы должны установить имя хоста сервера. Найдите поле System hostname и кликните по ссылке справа.

Это выведет вас на страницу Hostname and DNS Client. Найдите поле Hostname и введите в поле Fully-Qualified Domain Name. Затем нажмите кнопку Save в нижней части страницы, чтобы применить настройку.

После того, как вы установили имя хоста, нажмите Webmin в левой панели навигации, а затем нажмите Webmin Configuration.

Затем выберите SSL Encryption и откройте вкладку Let’s Encrypt. Вы увидите форму для создания сертификата.

С ее помощью вы сообщите Webmin, как получить и обновить сертификат. Сертификаты Let’s Encrypt действуют в течение 3 месяцев, но Webmin может попытаться автоматически обновить сертификат Let’s Encrypt каждый месяц. Let’s Encrypt ищет файлы подтверждения на вашем сервере, поэтому мы поместим этот файл в  /var/www/html – это папка веб-сервера Apache. Выполните следующие действия, чтобы настроить сертификат:

  1. В поле Hostnames for certificate укажите FQDN.
  2. В Website root directory for validation file нажмите кнопку Other Directory и введите /var/www/html.
  3. В Months between automatic renewal снимите флажок Only renew manually (чтоб включить автоматическое обновление), введите 1 в поле ввода и нажмите кнопку слева от поля ввода.
  4. Нажмите кнопку Request Certificate. Через несколько секунд вы увидите экран подтверждения.

Чтобы использовать новый сертификат, перезапустите Webmin, кликнув стрелку назад в своем браузере и нажав кнопку Restart Webmin. Подождите около 30 секунд, а затем перезагрузите страницу и войдите снова. Теперь ваш браузер должен указывать, что сертификат валидный.

3: Использование Webmin

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

Управление пользователями и группами

Откройте вкладку System и нажмите кнопку Users and Groups. В появившемся окне можно управлять пользователями и группами системы.

Создайте нового пользователя (например, deploy), с помощью которого можно будет развернуть приложение. Нажмите Create a new user в верхней части страницы. Это откроет экран Create User; укажите имя пользователя, пароль, группу и другие данные о пользователе.

  • В Username введите имя: deploy.
  • Выберите Automatic в поле User ID.
  • В Real Name укажите описание пользователя (например, Deployment user).
  • В Home Directory выберите Automatic.
  • В выпадающем списке Shell выберите /bin/bash.
  • В поле Password выберите Normal Password и введите пароль.
  • В Primary Group выберите New group with same name as user.
  • В Secondary Group выберите sudo в списке All groups. Затем нажмите кнопку ->, чтобы добавить группу в список in groups.
  • Нажмите Create.

Как видите, Webmin позволяет настраивать оболочку пользователя, поддержку домашних каталогов и многое другое.

Обновление пакетов

Webmin может обновить все пакеты системы. Для этого перейдите по ссылке Dashboard и найдите поле Package updates. Если консоль обнаружит доступные обновления, вы увидите в этом поле количество обновлений и ссылку на них.

Кликните по ссылке, а затем нажмите Update selected packages. Webmin обновит все пакеты. Возможно, при этом вам будет предложено перезапустить сервер (это тоже можно сделать через консоль).

Заключение

Теперь у вас есть удобная консоль для управления сервером, защищённая доверенным сертификатом. Интуитивно понятный интерфейс Webmin предоставляет множество полезных функций и модулей.

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

Tags: , , ,