Поиск по сайту:

Как установить Webmin на Ubuntu 18.04


Автор выбрал программу Write for DOnations.

###Введение

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

В этом руководстве вы установите и настроите Webmin на своем сервере и защитите доступ к интерфейсу с помощью действительного сертификата, используя Let’s Encrypt и Apache. Затем вы будете использовать Webmin для добавления новых учетных записей пользователей и обновления всех пакетов на вашем сервере с панели управления.

Предпосылки

Для выполнения этого урока вам понадобятся:

  • Один сервер Ubuntu 18.04, настроенный в соответствии с руководством по первоначальной настройке сервера Ubuntu 18.04, включая пользователя без полномочий root и брандмауэр.
  • Apache устанавливается в соответствии с инструкциями по установке стека Linux, Apache, MySQL, PHP (LAMP) в Ubuntu 18.04. Мы будем использовать Apache для проверки домена Let’s Encrypt и выступать в качестве прокси для Webmin. Следуя этому руководству, убедитесь, что вы настроили доступ к Apache через брандмауэр.
  • Полное доменное имя (FQDN) с записью DNS A, указывающей на IP-адрес вашего сервера. Чтобы настроить это, следуйте руководству Как настроить имя хоста с помощью DigitalOcean.
  • Certbot установлен в соответствии с шагом 1 раздела Как защитить Apache с помощью Let’s Encrypt в Ubuntu 18.04. Вы будете использовать Certbot для создания сертификата TLS/SSL для Webmin.

Шаг 1 — Установка Webmin

Во-первых, нам нужно добавить репозиторий Webmin, чтобы мы могли легко устанавливать и обновлять Webmin с помощью нашего менеджера пакетов. Мы делаем это, добавляя репозиторий в файл /etc/apt/sources.list.

Откройте файл в вашем редакторе:

  1. sudo nano /etc/apt/sources.list

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

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

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

Затем добавьте ключ Webmin PGP, чтобы ваша система доверяла новому репозиторию:

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

Затем обновите список пакетов, включив в него репозиторий Webmin:

  1. sudo apt update

Затем установите Вебмин:

  1. sudo apt install webmin

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

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

Теперь давайте защитим доступ к Webmin, разместив его за веб-сервером Apache и добавив действительный сертификат TLS/SSL.

Шаг 2 — Защита Webmin с помощью Apache и Let’s Encrypt

Чтобы получить доступ к Webmin, вы должны указать порт 10000 и убедиться, что порт открыт в вашем брандмауэре. Это неудобно, особенно если вы получаете доступ к Webmin, используя полное доменное имя, такое как webmin.ваш_домен. Мы собираемся использовать виртуальный хост Apache для проксирования запросов к серверу Webmin, работающему на порту. 10000. Затем мы защитим виртуальный хост с помощью сертификата TLS/SSL от Let’s Encrypt.

Сначала создайте новый файл виртуального хоста Apache в каталоге конфигурации Apache:

  1. sudo nano /etc/apache2/sites-available/your_domain.conf

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


<VirtualHost *:80>
        ServerAdmin your_email
        ServerName your_domain
        ProxyPass / http://localhost:10000/
        ProxyPassReverse / http://localhost:10000/
</VirtualHost>

Эта конфигурация указывает Apache передавать запросы на http://localhost:10000, сервер Webmin. Это также гарантирует, что внутренние ссылки, сгенерированные из Webmin, также будут проходить через Apache.

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

Затем нам нужно сообщить Webmin, чтобы он прекратил использовать TLS/SSL, так как Apache предоставит это для нас в будущем.

Откройте файл /etc/webmin/miniserv.conf в вашем редакторе:

  1. sudo nano /etc/webmin/miniserv.conf

Найдите следующую строку:

...
ssl=1
...

Измените 1 на 0 Это укажет Webmin прекратить использование SSL.

Далее мы добавим наш домен в список разрешенных доменов, чтобы Webmin понимал, что когда мы обращаемся к панели с нашего домена, это не что-то вредоносное, вроде атаки межсайтового скриптинга (XSS).

Откройте файл /etc/webmin/config в вашем редакторе:

  1. sudo nano /etc/webmin/config

Добавьте следующую строку в конец файла, заменив your_domain полным доменным именем.

 . . . 
referers=your_domain

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

Затем перезапустите Webmin, чтобы применить изменения конфигурации:

  1. sudo systemctl restart webmin

Затем включите модуль Apache proxy_http:

  1. sudo a2enmod proxy_http

Вы увидите следующий вывод:

Output
Considering dependency proxy for proxy_http: Enabling module proxy. Enabling module proxy_http. To activate the new configuration, you need to run: systemctl restart apache2

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

  1. sudo a2ensite your_domain

Вы увидите следующий вывод, указывающий, что ваш сайт включен:

Output
Enabling site your_domain. To activate the new configuration, you need to run: systemctl reload apache2

Теперь полностью перезапустите Apache, чтобы активировать модуль proxy_http и новый виртуальный хост:

  1. sudo systemctl restart apache2

Примечание. Убедитесь, что вы разрешаете входящий трафик на ваш веб-сервер через порт 80 и порт 443, как показано в предварительном руководстве How To Install Linux, Apache, MySQL, PHP (LAMP ) в Ubuntu 18.04. Вы можете сделать это с помощью команды sudo ufw allow в «Apache Full».

Перейдите по адресу http://ваш_домен в браузере, и вы увидите страницу входа в систему Webmin.

Предупреждение: пока НЕ входите в Webmin, так как мы не включили SSL. Если вы войдете сейчас, ваши учетные данные будут отправлены на сервер в виде открытого текста.

Теперь давайте настроим сертификат, чтобы ваше соединение было зашифровано при использовании Webmin. Для этого мы будем использовать Let’s Encrypt.

Скажите Certbot сгенерировать сертификат TLS/SSL для вашего домена и настроить Apache для перенаправления трафика на безопасный сайт:

  1. sudo certbot --apache --email your_email -d your_domain --agree-tos --redirect --noninteractive

Вы увидите следующий вывод:

Output
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Obtaining a new certificate Performing the following challenges: http-01 challenge for your_domain Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/your_domain-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/your_domain-le-ssl.conf Enabling available site: /etc/apache2/sites-available/your_domain-le-ssl.conf Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/your_domain.conf to ssl vhost in /etc/apache2/sites-available/your_domain-le-ssl.conf ------------------------------------------------------------------------------- Congratulations! You have successfully enabled https://your_domain You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=your_domain -------------------------------------------------------------------------------

Вывод показывает, что сертификат был установлен и Apache настроен на перенаправление запросов с http://your_domain на https://your_domain.

Теперь вы настроили защищенный рабочий экземпляр Webmin. Давайте посмотрим, как его использовать.

Шаг 3 – Использование Webmin

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

Чтобы войти в Webmin, перейдите по адресу http://ваш_домен и войдите либо с правами root, либо с правами sudo.

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

Давайте управлять пользователями и группами на сервере.

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

Давайте создадим нового пользователя с именем deploy, которого можно будет использовать для размещения веб-приложений. Чтобы добавить пользователя, щелкните Создать нового пользователя, расположенного вверху таблицы пользователей. Отобразится экран «Создать пользователя», где вы можете указать имя пользователя, пароль, группы и другие параметры. Следуйте этим инструкциям, чтобы создать пользователя:

  1. Заполните имя пользователя deploy.
  2. Выберите «Автоматически» для идентификатора пользователя.
  3. Заполните поле «Настоящее имя» описательным именем, например Пользователь развертывания.
  4. Для Домашнего каталога выберите Автоматически.
  5. Для Shell выберите /bin/bash из раскрывающегося списка.
  6. В поле «Пароль» выберите «Обычный пароль» и введите пароль по вашему выбору.
  7. В разделе «Основная группа» выберите «Новая группа» с тем же именем, что и у пользователя.
  8. Для дополнительной группы выберите sudo в списке Все группы и нажмите кнопку ->, чтобы добавить группу в список групп.
  9. Нажмите Создать, чтобы создать нового пользователя.

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

Далее давайте посмотрим, как устанавливать обновления в нашу систему.

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

Webmin позволяет обновлять все ваши пакеты через пользовательский интерфейс. Чтобы обновить все свои пакеты, щелкните ссылку «Панель мониторинга», а затем найдите поле «Обновления пакетов». Если доступны обновления, вы увидите ссылку с указанием количества доступных обновлений, как показано на следующем рисунке:

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

Заключение

Теперь у вас есть защищенный рабочий экземпляр Webmin, и вы использовали интерфейс для создания пользователя и пакетов обновления. Webmin дает вам доступ ко многим вещам, к которым вы обычно должны получить доступ через консоль, и организует их интуитивно понятным способом. Например, если у вас установлен Apache, вы найдете вкладку конфигурации для него в разделе «Серверы», а затем Apache.

Изучите интерфейс подробнее или посетите официальную вики Webmin, чтобы узнать больше об управлении системой с помощью Webmin.