Для безопасной и стабильной работы Webmin и Virtualmin, необходимо провести их первоначальную настройку. Затратив минимум усилий и с помощью мастера на начальном этапе использования панели, вы тем самым существенно сократите своё время на её настройку впоследствии.
Вход в панель
Введите в адресную строку вашего браузера возле «Подключено…». Откроется окно подключения, в котором нас интересует Адрес IPv4). В данном случае 192.168.126.140.

Вводим его в адресную строку с указанием порта через двоеточие (192.168.126.140:10000), на открывшейся странице авторизации вбиваем логин и пароль любого пользователя Linux с административными правами:

И перед нами открывается главное окно Webmin.

Настройка Webmin
Выбор языка
Первым делом установим язык: Вкладка Webmin → Webmin → Change Language and Theme

Жмём кнопку «Make Changes», ждём завершение процесса

и обновляем страницу.
Установка разрешённых IP
Чтобы предотвратить несанкционированный доступ к панели, наилучшим решением будет установить IP тех машин, к которым нет физического доступа посторонних лиц.
Для этого в том же разделе переходим к пункту Настройка Webmin → Управление доступом по IP

Заходим, выбираем «Разрешить доступ только с перечисленных адресов» и в текстовом блоке перечисляем разрешённые сети/IP машин.

Если планируете работать в панели только с сервера, то можете смело указывать только его локальный IP и/или его адрес локальной сети (не весь диапазон сети, как на скриншоте выше, а лишь 192.168.126.140, например.
В том случае, если работаете с другой машины локальной сети, введите её адрес в локальной сети, если её адрес динамический или решили работать с нескольких машин локальной сети — введите диапазон адресов своей сети. Также, можете указать ваш внешний IP только если он статический (постоянный).
Настройка терминала
В новых версиях разработчик по умолчанию закрыл возможность работы в терминале от рута. Если не хотите каждый раз вводить sudo su и пароль, то перейдите в Webmin → Пользователи Webmin и выберите root. Далее в разделе Доступные модули Webmin в Инструменты находим Terminal и в Enforce sudo-only privileges выбираем Нет

Также сразу настроим поддержку кириллицы. Переходим в терминал (Инструменты → Terminal) и жмём кнопку с иконкой в виде шестерёнки в верхнем левом углу

В открывшемся окне в поле Set shell character encoding (Установить кодировку оболочки) выбираем Custom и вводим
ru_RU.UTF-8
Сохраняем изменения и наш терминал полностью готов к работе.
Мастер первоначальной настройки
Предварительный этап
Загрузка сигнатур антивируса ClamAV Virus Scanning Server
ClamAV® — это многопоточный сканер с открытым исходным кодом для обнаружения троянов, вирусов, вредоносных программ. Расширенные подписи обеспечивают защиту от фишинга, мошенничества, казино, порно и других общих спама.
ClamAV использует формат файла базы данных вирусов ClamAV (CVD), который служит контейнером для сжатых и подписанных в цифровой форме официальных наборов сигнатур, которые поддерживают ClamAV — daily.cvd , main.cvd и bytecode.cvd . Каждый набор сигнатур служит разным целям:
- daily.cvd содержит сигнатуры для последних угроз (обновляются ежедневно)
- main.cvd содержит сигнатуры, которые ранее присутствовали в daily.cvd и которые, как было показано, имеют низкий риск ложноположительных срабатываний.
Перед тем, как включить его в Мастере настроек, необходимо загрузить основной набор сигнатур и ежедневное обновление иначе при попытке включения получите ошибку.
Если планируете использовать антивирус для почты, то для возможности его запуска нужно скачать файлы main.cvd и daily.cld и дать им соответствующие разрешения. Сделаем это одной командой, которая также запустит демон и выведет его состояние:
cd /var/lib/clamav/; wget https://www.danami.com/hotfix/main.cvd; wget https://www.danami.com/hotfix/daily.cld; chown clamav:clamav main.cvd; chown clamav:clamav daily.cld; systemctl start clamav-daemon; systemctl status clamav-daemon
Правка файла hosts
Для того, чтобы Postfix распознавал внешний IP и ассоциировал его с нашим хостом нужно внести изменения в файл host.
Переходим в Инструменты → Файловый менеджер и открываем файл
/etc/hosts
Находим запись нашего хоста (который мы определили при установке Webmin)
192.168.126.140 host.site.ru host
и меняем указанный там IP на внешний, например
98.35.162.58 host.site.ru host
Основной этап
Переходим к вкладке Virtualmin и нас встречает мастер предварительной настройки, обещающий нам помочь оптимально настроить Virtualmin для нашей системы. Также мы можем сделать выбор в зависимости от своей цели (размещение веб-сайтов, электронной почты или базы данных) с учётом системных ресурсов (оперативная память и мощность процессора. Если его закрыть, то он настроит сервер по своему усмотрению.

Использование памяти
На следующем шаге нам предлагают повысить производительность интерфейса и электронной почты за счёт использования оперативной памяти. Всё это зависит от планируемой загрузки сервера:
- Предварительная загрузка библиотек Virtualmin?
- Да, быстрый пользовательский интерфейс при увеличении используемой оперативной памяти (~40 МБ)
- Нет, пользовательский интерфейс медленнее и с меньшим объемом используемой оперативной памяти, но большей нагрузкой на процессор
- Запустить сервер поиска домена электронной почты?
- Да, быстрая обработка почты при увеличении используемой оперативной памяти (~70 МБ)
- Нет, обработка почты медленнее и с меньшим объемом используемой оперативной памяти, но большей нагрузкой на процессор

Антивирус ClamAV
Далее нас спросят, включить ли проверку входящей почты на вирусы с помощью ClamAV? При этом следует учесть, что антивирус даже в режиме простоя будет использовать ощутимый объём памяти, а большой объём входящих сообщений сильно нагрузит процессор. Если планируете использовать сторонние почтовые серверы, можете смело отказаться от него.

Если выбираете его использование, то нужно предварительно подготовить (если не сделали это сразу после установки панели) его запуск командой
cd /var/lib/clamav/; wget https://www.danami.com/hotfix/main.cvd; wget https://www.danami.com/hotfix/daily.cld; chown clamav:clamav main.cvd; chown clamav:clamav daily.cld; systemctl start clamav-daemon; systemctl status clamav-daemon
База данных
Следующий шаг — выбор сервера базы данных. Virtualmin поддерживает как серверы баз данных MariaDB, так и PostgreSQL. Если вы не планируете вести проекты, использующие PostgreSQL, то выбирайте только MariaDB.

Пароль MariaDB
Теперь необходимо установить пароль суперпользователя (root) для MariaDB. Можете оставить автоматически сгенерированный пароль (не забудьте записать его) или установите свой.

Конфигурация DNS
Далее настроим основной и вторичные (если требуется) адреса DNS сервера. При этом учтите, что основной адрес должен быть актуальным (прописанным в записях публичных DNS), но проверку можно отключить, поставив галочку на «Skip check for resolvability».

Завершение основного этапа
На этом основная настройка завершена. Можно начать работу, по ходу настраивая свой сервер или продолжить работу в мастере. Выбираем «Next», чтобы продолжить.

Дополнительный этап
Хранение паролей
Теперь нам предлагают выбрать, как будут хранится пароли для виртуальных серверов и почтовых ящиков. Можем разрешить хранить пароли в виде обычного текста, что не особо безопасно, но позволит с лёгкостью восстановить забытый. Или хранить только хэшированные пароли. Это безопасно, но и нам не удастся вспомнить забытый пароль, а пароль базы данных для новых серверов будет отличаться от пароля администратора и будет сгенерирован случайным образом.

Использование MariaDB
Пришло время настроить использование ресурсов базой данных в зависимости от того, насколько интенсивно вы ожидаете использования базы данных. На выбор нам предлагают:
- Сохранить системные настройки MariaDB по умолчанию
- Небольшая система с 1 ГБ оперативной памяти с нечастым использованием MariaDB
- Средняя система с 26 гб оперативной памяти при регулярном использовании MariaDB
- Большая система с 4G оперативной памяти, на которой в значительной степени используется MariaDB
- Огромная система с 8 ГБ оперативной памяти или более, на которой активно используется MariaDB

Хранение SSL
Теперь мы должны решить, где будут хранится сертификаты SSL. Это могут быть домашние каталоги доменов, что очень удобно с административной точки зрения, но при неаккуратном поведении пользователей (изменения в них или удаление) может привести к сбоям или отказам сайтов. Или отдельный каталог в системе, где доступ пользователей будет исключён.

Основной виртуальный сервер
Мастер нам предлагает решить, нужно ли создать виртуальный сервер по умолчанию, который будет обслуживать веб-запросы к вашей системе, не соответствующие никакому другому домену. Он также может быть использован для запроса SSL-сертификата Let’s Encrypt интерфейсом Virtualmin. Представлены варианты:
- • Настроить виртуальный сервер по умолчанию?
- Нет
- Создать сервер с доменом…
- • Включить SSL на сервере по умолчанию?
- Нет
- Да, с самозаверяющим сертификатом
- Да, с сертификатом Let’s Encrypt

Завершение настроек
И последнее окно, которое сообщает нам, что наш сервер предварительно настроен полностью и работа мастера настроек завершена.

В новой версии панели есть один нюанс с работой DKIM!
В /etc добавлены 2 файла:
/etc/dkim-keytable
/etc/dkim-signingtable
При этом, в файле dkim-keytable предустановлен селектор по умолчанию. По неизвестной мне причине, он не обновляется с изменением в настройках DKIM, так что, если вы его изменяете, то измените и в этом файле. Впрочем, их можно просто удалить, по моим наблюдениям, их отсутствие на результат валидности аутентификации это не повлияет.
На этом все первоначальные настройки Virtualmin завершены полностью. Можно приступать к основной настройке системы.