Linux настройка mail сервера

Записки IT специалиста

Установка и настройка почтового сервера Mail-in-a-Box в Ubuntu 22.04

Продолжая рассматривать решения для собственной почты, нельзя обойти вниманием еще один Open Source проект — Mail-in-a-Box. Пожалуй, это одна из самых продвинутых в техническом плане сборок, но и самая своеобразная. Общая идея этого продукта заложена в названии — Mail-in-a-Box (Почта в коробке) и предполагает развертывание полноценного и современного почтового сервера в одно действие. Но, в отличие от иных сборок, мнение пользователя здесь не учитывается, разработчики считают, что они лучше знают, каким должен быть почтовый сервер и мы либо играем по их правилам, либо не играем вообще.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Да, вы не ослышались, Mail-in-a-Box считает собственные настройки единственно верными и не приветствует ручное изменение конфигурации, более того, при обновлении или повторном запуске утилиты конфигурирования все настройки будут сброшены на изначальные. С другой стороны, вам вообще не требуется знать почти ничего об электронной почте чтобы работать с данной сборкой. Буквально в несколько очень простых действий вы можете поднять полностью автономную почтовую систему. В общем, выбор за вами.

Доменные имена и DNS-зона

Как театр начинается с вешалки, так и почта начинается с настройки DNS-зоны, важно сделать это заранее, так как изменения в системе DNS не распространяются мгновенно. В нашем примере будет использован специальный технический домен, который мы специально используем для подготовки материалов.

  • it-31.ru — используемый домен
  • mk-52 — почтовый сервер, полное доменное имя (FQDN) mk-52.it-31.ru
  • 203.0.113.25 — IP-адрес почтового сервера

Те, кто читал наши предыдущие статьи о почтовых сборках заметят, что мы не указали псевдоним (CNAME) для сервера. Так и есть, с Mail-in-a-Box использовать его не получится, поэтому сразу называем сервер как надо или используем то имя, которое есть.

Есть два варианта развертывания Mail-in-a-Box — в качестве автономной системы, в этом случае DNS-сервер вашей зоны будет расположен на этом же узле, либо с использованием внешних DNS-серверов. Первый способ проще, но накладывает серьёзные ограничения и неудобства в управление доменной зоны. А в случае неисправностей почтового сервера ваша зона останется без сервера имен, что приведет к ее глобальной недоступности.

Внешние DNS-сервера позволяют сохранить управляемость и надежность облуживания зоны, но потребуют дополнительных действий и настроек, мы рекомендуем именно этот вариант.

Но если вы хотите все-таки получить автономную систему, то вам потребуется внести на DNS-сервере, обслуживающем вашу зону следующие записи:

ns1.mk-52 IN A 203.0.113.25
ns2.mk-52 IN A 203.0.113.25

Это так называемые Glue (склеивающие) записи, позволяющие определить адреса сервером имен если они находятся в обслуживаемом ими домене.

Читайте также:  Обновить груб в линукс

Затем здесь же изменим записи, определяющие сервера имен зоны:

@ IN NS ns1.mk-52.it-31.ru.
@ IN NS ns2.mk-52.it-31.ru.

В NS-записях следует использовать только полные (FQDN) имена узлов и обязательно заканчивать их точкой.

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

Если же мы используем внешние DNS-сервера, то вносим на них стандартный набор записей, сначала MX и А:

@ IN MX 10 mk-52
mk-52 IN A 203.0.113.25
@ IN TXT "v=spf1 +a +mx ~all"
_dmarc TXT "v=DMARC1; p=none; rua=mailto:report@it-31.ru"

Мы указали достаточно мягкие правила, согласно которым почту могут отправлять узлы перечисленные в A и MX-записях домена, а политика DMARC предписывает только присылать отчеты, если почта не прошла проверку у получателя. Более подробно с этими записями и их настройкой вы можете ознакомиться в статье:

Далее, вне зависимости от того какой способ управления DNS вы выбрали, вам нужно обратиться к провайдеру или хостеру, тому кто выдал вам IP-адрес, и попросить создать обратную запись (PTR) с именем вашего хоста, пример такой записи для нашего случая:

25.113.0.203 IN PTR mk-52.it-31.ru.

Еще раз напоминаем, обратную запись делает владелец IP-подсети, и она должна содержать имя сервера, отправляющего почту.

Предварительная настройка сервера

Для установки Mail-in-a-Box потребуется Ubuntu 22.04 LTS, другие операционные системы не поддерживаются. Также важно использовать для этого чистую минимальную установку, так как установщик будет настраивать систему по собственному усмотрению, в т.ч. и удаляя ненужные, на его взгляд, пакеты, например, apache.

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

В процессе предварительной подготовки нам нужно задать правильное имя сервера, используя для этого FQDN:

hostnamectl set-hostname mk-52.it-31.ru

Затем откроем файл /etc/hosts и приведем записи в нем к виду:

127.0.0.1 localhost
127.0.1.1 mk-52.it-31.ru mk-52

И правильно настроим часовой пояс:

timedatectl set-timezone Europe/Moscow

Получить список доступных поясов можно командой:

timedatectl list-timezones

На этом подготовка сервера закончена.

Установка Mail-in-a-Box

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

Скачаем и сразу запустим скрипт установки:

curl -s https://mailinabox.email/setup.sh | bash

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

Mail-in-a-Box-install-ubuntu-2204-001.png

Затем имя хоста, штатно рекомендуется использовать box, но мы же не инкубаторские, поэтому вводим собственное имя в формате FQDN.

Mail-in-a-Box-install-ubuntu-2204-002.png

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

Mail-in-a-Box-install-ubuntu-2204-003.png

На этом установка Mail-in-a-Box закончена.

Возможные проблемы при установке

Так как Mail-in-a-Box устанавливает свой DNS-сервер, точнее сразу два: NSD для управления зоной и BIND для внутренних целей, то после этого в системе может нарушиться разрешение адресов, и вы получите ошибку скачивания пакетов.

Читайте также:  Linux mint for iphone

Mail-in-a-Box-install-ubuntu-2204-004.png

В этом случае откройте файл /etc/bind/named.conf.options и добавьте в него опцию:

И повторите установку командой:

После завершения установки приведите конфигурацию BIND к исходному виду и еще раз перезапустите сервис.

Начало работы. Административная часть

Для того, чтобы попасть в админ-панель наберите в адресной строке браузера https://имя_сервера/admin и используйте для входа учетные данные созданные вами в конце установки.

Для начала перейдите в System — Status Checks и проверьте статус установки. Особое внимание обратите на ошибки и предупреждения. Как мы уже говорили, у разработчиков свои понятия о правильном, поэтому не все указанные там ошибки являются таковыми, но все равно внимательно изучите список и постарайтесь устранить их по максимуму.

Mail-in-a-Box-install-ubuntu-2204-005.png

Если вы выбрали размещение зоны прямо на почтовом сервере, то для добавления записей в зону можно использовать раздел System — Custom DNS, но возможности там самые примитивные. Отсюда же можно попасть в систему мониторинга, для этих целей здесь используется Munin. Более подробно о работе с этой системой мониторинга можно прочитать в нашей статье:

Mail-in-a-Box-install-ubuntu-2204-006.png

Также автоматически настроено резервное копирование, управление им доступно в разделе System — Backup Status. По умолчанию копии делаются локально, но вы можете настроить копирование на внешние узлы через rsync, в S3 хранилища или использовать Backblaze B2.

Mail-in-a-Box-install-ubuntu-2204-007.png

В целом набор возможностей впечатляет, перед нами действительно современная и продвинутая почтовая система сразу из коробки. Также сразу же настроено автоматическое обновление системы, об этом беспокоиться тоже не надо.

Следующий раздел Mail & Users состоит из трех разделов, первый Instructions — чисто информационный, содержит настройки подключения к серверу. Единственный момент, вместо предлагаемого для подключения клиентов порта 465 следует использовать 587, порт 465 давно признан устаревшим и исключен из спецификаций. Возможность работы почтовых клиентов через 25 порт заблокирована.

Два оставшихся раздела Users и Aliaces позволяют заводить почтовые ящики пользователей и алиасы к ним. Тут все достаточно просто, но приятным дополнением оказывается наличие API, краткая документация к которому доступна прямо в этом разделе, что открывает широкие возможности по автоматизации.

Mail-in-a-Box-install-ubuntu-2204-008.png

Раздел Contacts/Calendar содержит исключительно ссылки на веб-доступ к контактам и календарю.

Настройка DKIM-записи

Если вы используете внешние DNS, то вам потребуется добавить открытый ключ для проверки подлинности отправителя почты — DKIM, для этого перейдите в раздел System — External DNS и найдите в нем DKIM-запись.

Mail-in-a-Box-install-ubuntu-2204-009.png

Ее содержимое следует перенести на ваш DNS-хостинг.

Настройка дополнительных функций

Как мы уже говорили, Mail-in-a-Box — весьма современный и продвинутый сервер, предоставляющий массу возможностей, одна из них — автообнаружение настроек почтовыми клиентами. Или MTA-STS (Mail Transfer Agent-Strict Transport Security) — тонкая настройка политик использования TLS при почтовом обмене.

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

Читайте также:  Образ линукс для ноутбука

Начать следует с раздела System — External DNS, где перечислены все примеры нужных записей, просто переносим их копированием на свой DNS-сервер. Рядом с каждой записью присутствует краткое описание.

Mail-in-a-Box-install-ubuntu-2204-010.png

После того, как добавленные записи заработают, в частности это касается А-записей для служебных поддоменов, переходим в System — TLS (SSL) Certificates и получаем для них сертификаты.

Mail-in-a-Box-install-ubuntu-2204-011.png

Как видим — ничего сложного, если вы выбрали полностью автономный вариант системы, то все это будет работать у вас из коробки.

Начало работы. Пользовательская часть

В качестве веб-клиента в Mail-in-a-Box используется Roundcube, а календарь и адресная книга используются от Nextcloud. Для того, чтобы попасть в веб-почту просто наберите в адресной строке https://имя_сервера/mail. Сразу же стоит перейти в настройки почтового ящика и установить в качестве адресной книги по умолчанию ownCloud, в противном случае Roundcube будет использовать собственную книгу, которая не будет синхронизироваться между клиентами.

Mail-in-a-Box-install-ubuntu-2204-012.png

Затем проверьте оправку почты, начните с локальной, потом на внешние сервера. Не ленитесь заполнять все поля и прикреплять вложения, если там есть какие-то проблемы, то лучше узнать о них сейчас, а не от пользователей.

Mail-in-a-Box-install-ubuntu-2204-013.png

На принимающей стороне убедитесь, что письмо проходит проверку подлинности отправителя, имеет подпись и используются защищенные каналы связи.

Mail-in-a-Box-install-ubuntu-2204-014.png

Календарь и контакты стандартные от Nextcloud, но это отдельный веб-интерфейс с отдельной аутентификацией:

Mail-in-a-Box-install-ubuntu-2204-015.png

Если вы хотите обмениваться событиями и приглашать коллег — добавьте в настройках свой адрес электронной почты. А внизу, в Calendar Settings вы можете скопировать ссылку для подключения календаря и адресной книги на почтовом клиенте если вы не стали настраивать автообнаружение, либо оно по какой-то причине не работает. Структура ссылки там всегда такая: https://имя_сервера/cloud/remote.php/dav.

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

Mail-in-a-Box-install-ubuntu-2204-016.png

Подводя итоги, можно сказать, что Mail-in-a-Box — интересный, хотя и достаточно неоднозначный продукт. С одной стороны он позволяет быстро развернуть современную почтовую систему с массой возможностей, с другой — какая-либо гибкость настроек отсутствует и вам придется соглашаться с тем, каким видят почтовый сервер разработчики продукта. Но в любом случае данная сборка заслуживает внимания, особенно если вы не чувствуете себя готовым глубоко погружаться в работу электронной почты.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Подпишись на наш Telegram-канал

Или подпишись на наш Телеграм-канал:

Источник

Оцените статью
Adblock
detector