В этом уроке вы узнаете, как оперативно установить и настроить собственный почтовый сервер на Ubuntu 22.04 с использованием Modoboa — бесплатной платформы с открытым исходным кодом, предназначенной для управления почтовыми сервисами и работы с серверами Postfix SMTP и Dovecot IMAP/POP3. Modoboa разработана на языке Python и распространяется по лицензии ISC. Ключевые возможности Modoboa включают в себя:
- Modoboa по умолчанию применяет Nginx в роли веб-сервера для работы с веб-клиентом и административной панелью.
- Поддержка Postfix и Dovecot.
- Поддержка баз данных MySQL, MariaDB или PostgreSQL.
- Простое создание неограниченного числа почтовых ящиков и доменов через веб-панель администратора.
- Простое создание почтовых алиасов через панель веб-администрирования.
- Веб-клиент предлагает удобную систему фильтрации, позволяющую распределять сообщения по разным папкам.
- Это может способствовать защите репутации вашего домена, осуществляя мониторинг черных списков электронной почты и создавая отчеты DMARC, что увеличивает вероятность доставки ваших писем в папку «Входящие», а не в «Спам».
- Содержит интерфейс amavis, который предназначен для фильтрации спама и выявления вирусов в электронной почте.
- Календарь и список контактов.
- Система интеграции с Let’s Encrypt.
- Включает AutoMX, что дает возможность пользователям просто настроить свою электронную почту в почтовом клиенте на компьютере или мобильном устройстве.
Содержание статьи
- 1 Подберите подходящего хостинг-провайдера и зарегистрируйте доменное имя
- 2 Настройка записи MX в DNS
- 3 Конфигурация почтового сервера на Ubuntu 22.04 с использованием установщика Modoboa
- 4 Внедрение почтовых ящиков в админ-панели Modoboa
- 5 Проведение рассылки тестовых писем
- 6 Выключение серого листинга
- 7 Остановка Policyd
- 8 Убедитесь, что порт 25 не заблокирован для исходящих соединений
- 9 По-прежнему не удается отправить электронное письмо?
- 10 Применение почтовых программ на вашем ПК или мобильном устройстве
- 11 Оптимизация почтовых рассылок
- 12 Запись DKIM (DomainKeys Identified Mail)
- 13 Запись для протокола DMARC
- 14 Проверка оценки и рассылки электронной почты
- 15 Почтовый ящик Microsoft отклоняет электронное письмо?
- 16 Автоматическое обновление сертификата TLS от Let’s Encrypt
- 17 Конфигурация резервного почтового сервера
Подберите подходящего хостинг-провайдера и зарегистрируйте доменное имя
Для полноценной настройки почтового сервера на базе Modoboa потребуется сервер с минимум 3 ГБ оперативной памяти, так как после установки его потребление ОЗУ превысит 2 ГБ.
Обратите внимание: для установки Modoboa необходимо использовать новый сервер с операционной системой Ubuntu 22.04.
Данный урок создан на виртуальном сервере Kamatera, стоимостью $9 в месяц, с одной центральной процессорной единицей и 3 ГБ оперативной памяти. В компании предусмотрен 30-дневный бесплатный тестовый период.
Kamatera — это превосходный выбор для развертывания почтового сервера, так как
- Порт 25 не заблокирован, что позволяет вам отправлять неограниченное количество писем, включая транзакционные и информационные рассылки, без дополнительных расходов на SMTP-ретрансляцию. Kamatera не вводит никаких ограничений по использованию SMTP. Вы можете отправлять до миллиона писем ежедневно.
- IP-адрес не числится в черных списках электронной почты. (По крайней мере, это так для меня, так как я выбрал центр обработки данных в Далласе.) Вы точно не хотите попасть в черный список IP-адресов Microsoft Outlook или spamrats. Некоторые черные списки могут блокировать целые диапазоны IP-адресов, и в таком случае у вас не будет возможности удалить свой IP-адрес из этого списка.
- Редактирование PTR-записи поможет повысить уровень доставки электронной почты.
- Они предоставляют возможность рассылать информационные письма вашим подписчикам через электронную почту без каких-либо ограничений по времени или дням.
- Можно заказать несколько IP-адресов для одного сервера. Это особенно полезно для тех, кто планирует отправлять большое количество писем. Распределение почтового трафика между несколькими IP-адресами помогает повысить эффективность доставки сообщений.
Другие провайдеры VPS, такие как DigitalOcean, закрывают доступ к порту 25. DigitalOcean не предоставляет возможность разблокировки этого порта, поэтому вам придется использовать SMTP-ретрансляцию, чтобы обойти эту ограничение, что может потребовать дополнительных затрат. В случае с VPS Vultr порт 25 также изначально заблокирован. Его разблокировка возможна при создании запроса в службу поддержки, но провайдер оставляет за собой право снова его заблокировать, если посчитает вашу электронную активность нежелательной. Vultr может повторно закрыть этот порт, если вы будете использовать их сервера для отправки массовых рассылок.
Зайдите на веб-ресурс Kamatera, зарегистрируйте аккаунт, а затем в панели управления создайте свой сервер.

Советую ознакомиться с инструкциями, представленными ниже, для корректной настройки вашего Linux VPS сервера на платформе Kamatera.
- Как организовать VPS сервер на Linux с помощью Kamatera
По завершении настройки сервера Kamatera отправит вам письмо с информацией для SSH-доступа. Для подключения к вашему серверу вам понадобится SSH-клиент. Если у вас установлены Linux или macOS, откройте терминал и введите следующую команду, заменив 12.34.56.78 на IP-адрес вашего сервера.
Вам необходимо будет ввести пароль.
Также вам потребуется доменное имя. Я выбрал зарегистрировать своё доменное имя на NameCheap, так как там низкие цены, а также они предлагают бесплатную защиту конфиденциальности whois на весь срок использования.
Настройка записи MX в DNS
MX-запись указывает, какой именно хост или хосты обрабатывают электронную почту для заданного доменного имени. К примеру, хост, отвечающий за почту для linux16.ru, это mail.linux16.ru. Когда пользователь с аккаунтом Gmail отправляет сообщение на адрес [email protected], сервер Gmail сначала запрашивает MX-запись для linux16.ru. После того как он находит, что mail.linux16.ru отвечает за получение почты, он запрашивает A-запись для mail.linux16.ru, чтобы определить его IP-адрес, что позволяет доставить сообщение.
В вашем DNS-менеджере необходимо добавить MX-запись для вашего домена. Укажите символ @ в поле Имя, чтобы указать основное доменное имя, а в поле Значение введите mail.your-domain.com.

Обратите внимание: имя хоста для MX-записи не должно являться псевдонимом какого-либо другого имени. Кроме того, рекомендуется использовать имена хостов вместо простых IP-адресов для записи MX.
Вашему DNS-менеджеру может понадобиться указать значение приоритета (или предпочтения). Оно может быть в диапазоне от 0 до 65,536. Чем меньше число, тем выше его приоритет. Вы можете установить значение 0 для почтового сервера или использовать значение по умолчанию.
После настройки MX-записи необходимо также создать A-запись для mail.your-domain.com, чтобы она могла быть сопоставлена с IP-адресом. Если ваш сервер работает по протоколу IPv6, не забудьте добавить также AAAA-запись.
При создании A-записи для вашего почтового сервера, если вы пользуетесь DNS-сервисом Cloudflare, отключите функцию CDN.
Конфигурация почтового сервера на Ubuntu 22.04 с использованием установщика Modoboa
Подключитесь к своему серверу с помощью SSH, а затем выполните указанные команды для обновления пакетов программного обеспечения.
sudo apt update sudo apt upgrade - y
Рекомендую создать пользователя с правами sudo для управления вашим сервером, вместо того чтобы использовать учетную запись root, что повысит безопасность системы. Для создания нового пользователя выполните следующую команду, заменив «username» на желаемое имя пользователя.
adduser username
После этого необходимо включить пользователя в группу sudo.
adduser username sudo
Перейдите к другому пользователю.
su - username
Modoboa разработана на языке Python. Чтобы установить требуемое программное обеспечение Python, выполните следующую команду.
sudo apt-get install - y git python3-virtualenv python3-pip
Загрузите установочный файл modoboa с GitHub.
git clone https://github.com/modoboa/modoboa-installer
После этого перейдите в папку modoboa-installer и создайте файл конфигурации. Подмените example.com на ваше собственное доменное имя.
cd modoboa-installer sudo ./run. py --stop-after-configfile-check example.com

Используйте текстовый редактор командной строки, например nano, для внесения изменений в файл конфигурации installer.cfg.
sudo nano installer.cfg
Для получения действительного TLS-сертификата от Let’s Encrypt для вашего почтового сервера, необходимо в разделе [certificate] изменить параметр type с self-signed на letsencrypt.
type = letsencrypt
Измените адрес электронной почты с [email protected] на ваш актуальный адрес, который будет задействован для восстановления учетной записи и получения важных уведомлений. Если вы продолжите использовать стандартный адрес, вам не удастся получить и установить сертификат Let’s Encrypt.
Установщик Modoboa по умолчанию настроит сервер базы данных PostgreSQL, как это указано в следующих строках конфигурационного файла.
[database] engine = postgres host = 127.0.0.1 install = true
Если вы планируете использовать сервер базы данных MariaDB, замените engine с postgres на mysql. (Modoboa установит MariaDB вместо MySQL.)
Сохраните изменения и закройте документ. (Чтобы сохранить файл в редакторе Nano, нажмите Ctrl+O, затем подтвердите нажатием Enter. Для выхода используйте комбинацию Ctrl+X.)
Следующим шагом необходимо указать полное квалифицированное доменное имя (FQDN) в качестве имени хоста для вашего почтового сервера, например mail.example.com. Для установки имени хоста выполните следующую команду.
sudo hostnamectl set-hostname mail.example.com
Теперь необходимо убедиться, что DNS-записи обновлены в Интернете. В зависимости от вашего регистратора, обновление может произойти сразу или занять до 24 часов. Вы можете посетить сайт https://dnsmap.io, ввести хост вашего почтового сервера (mail.example.com) для проверки статуса распространения DNS.
Если ваша DNS-запись уже обновлена, введите следующую команду для начала установки. (Не забудьте заменить example.com на ваше основное доменное имя, например linux16.ru. Не используйте поддомены, такие как mail.example.com, в этой команде).
sudo ./run. py --interactive example.com
Установка может потребовать определенного времени. На моем сервере этот процесс занял около 10 минут. После завершения установки рекомендуется перезагрузить сервер, чтобы гарантировать автоматический запуск всех служб.
sudo shutdown - r now
Если в процессе установки произошла ошибка, вы можете воспользоваться опцией —debug для получения более детальной информации.
sudo ./run. py --interactive --debug example.com
По окончании установки Modoboa вы сможете зайти в админ-панель, используя имя пользователя admin и пароль password.
- Если ваш браузер не может установить соединение с панелью администратора, возможно, Nginx не работает. Попробуйте запустить его командой
sudo systemctl restart nginx
- Если проблема сохраняется, выполните
sudo nginx -t, чтобы диагностировать ошибки.
После входа в систему вам следует перейти в Администратор -> Настройки ->Профиль для смены пароля.

Внедрение почтовых ящиков в админ-панели Modoboa
Откройте вкладку «Домены» и кликните на кнопку «Добавить», чтобы внести новый домен.

В следующем шаге введите основное доменное имя в соответствующее поле. Рекомендуется активировать подпись DKIM, так как это может положительно сказаться на репутации вашего домена. В поле для выбора ключа введите произвольное слово, например, modoboa. Установите длину ключа на 2048.

На следующем экране у вас будет возможность создать учетную запись администратора для вашего домена. Для работы протокола SMTP необходимо, чтобы почтовый сервер имел адрес [email protected].

Нажмите на кнопку «Отправить», чтобы ваше доменное имя было включено в Modoboa. Чтобы добавить адреса электронной почты, откройте вкладку «Домены» и кликните на название вашего домена. После этого кликните на почтовые ящики. Нажмите на кнопку «Добавить» и выберите пункт «Учетная запись». После этого выберите роль «Простой пользователь». Введите адрес электронной почты в поле для имени пользователя и установите пароль.
На следующем этапе у вас есть возможность выбрать псевдоним для указанного адреса электронной почты. При нажатии кнопки отправки формируется адрес электронной почты.
Проведение рассылки тестовых писем
Для доступа к веб-почте необходимо сначала выйти из учетной записи администратора, после чего введите данные пользователя.
После входа в веб-интерфейс почтового сервиса Modoboa вы можете отправить тестовое сообщение с вашего личного почтового сервера на другой адрес электронной почты и обратно.

Выключение серого листинга
Входящие электронные письма могут задерживаться на несколько минут, так как по умолчанию Modoboa активирует серую листинг-систему, которая уведомляет другие SMTP-серверы о необходимости повторной попытки через некоторое время. Это помогает предотвратить поступление спама. Сообщение в /var/log/mail.log подтверждает, что серая листинг-система активирована.
postfix/postscreen[20995]: NOQUEUE: reject: RCPT from [34.209.113.130]:36980: 450 4.3.2;
Тем не менее, серая листинг может вызывать определённые неудобства. Вы можете ее отключить, изменив главный конфигурационный файл Postfix.
sudo nano /etc/postfix/main.cf
В конце файла найдите указанные строки и закомментируйте их, добавив символ # в начале каждой из них.
postscreen_pipelining_enable = yes postscreen_pipelining_action = enforce postscreen_non_smtp_command_enable = yes postscreen_non_smtp_command_action = enforce postscreen_bare_newline_enable = yes postscreen_bare_newline_action = enforce
Сохраните файл и закройте его. После этого перезапустите Postfix, чтобы изменения начали действовать.
sudo systemctl restart postfix
Теперь у вас есть возможность получать электронные письма мгновенно, без задержек в несколько минут.
Остановка Policyd
Если в файле /var/log/mail.log обнаружена следующая ошибка, это указывает на то, что демон политики не активен.
postfix/smtpd[229906]: warning: connect to 127.0.0.1:9999: Connection refused postfix/smtpd[229906]: warning: problem talking to server 127.0.0.1:9999: Connection refused
Попробуйте выполнить следующую команду для перезапуска.
sudo systemctl restart supervisor
После этого убедитесь, что демон политики активен и прослушивает порт 9999.
sudo ss -lnpt | grep 9999
Если он по-прежнему не отвечает на порту 9999, вам следует отключить демон управления политиками в Postfix.
sudo nano /etc/postfix/main.cf
Пожалуйста, найдите указанные строки.
smtpd_recipient_restrictions = check_policy_service inet:127.0.0.1:9999 permit_mynetworks permit_sasl_authenticated check_recipient_access proxy:pgsql:/etc/postfix/sql-maintain.cf proxy:pgsql:/etc/postfix/sql-relay-recipient-verification.cf reject_unverified_recipient reject_unauth_destination reject_non_fqdn_sender reject_non_fqdn_recipient reject_non_fqdn_helo_hostname
Закомментируйте команду check_policy_service.
smtpd_recipient_restrictions = # check_policy_service inet:127.0.0.1:9999 permit_mynetworks permit_sasl_authenticated check_recipient_access proxy:pgsql:/etc/postfix/sql-maintain.cf proxy:pgsql:/etc/postfix/sql-relay-recipient-verification.cf reject_unverified_recipient reject_unauth_destination reject_non_fqdn_sender reject_non_fqdn_recipient reject_non_fqdn_helo_hostname
Сохраните файл и закройте его. После этого перезапустите Postfix.
sudo systemctl restart postfix
Убедитесь, что порт 25 не заблокирован для исходящих соединений
Ваш интернет-провайдер или хостинг-компания не будет ограничивать входящие соединения на порт 25 вашего сервера, что позволяет вам получать электронные письма от других почтовых серверов. Тем не менее, многие провайдеры блокируют исходящие соединения на порт 25, что делает невозможной отправку электронных писем.
Если ваше сообщение не доставлено на другой адрес электронной почты, например, Gmail, выполните следующую команду на своем почтовом сервере, чтобы выяснить, не заблокирован ли исходящий порт 25.
telnet gmail-smtp-in. l.google.com 25
Если соединение успешно установлено, вы увидите сообщения, похожие на приведенные ниже, что свидетельствует о том, что он не заблокирован. (Совет: введите quit и нажмите Enter, чтобы завершить соединение.)
Trying 74.125.68.26. Connected to gmail-smtp-in. l.google.com. Escape character is '^]'. 220 mx. google.com ESMTP y22si1641751pll.208 - gsmtp
Если исходящий порт 25 заблокирован, вы получите сообщение подобное следующему:
Trying 2607:f8b0:400e:c06::1a. Trying 74.125.195.27. telnet: Unable to connect to remote host: Connection timed out
В данном случае ваш Postfix не способен отправлять электронные письма на другие SMTP-серверы. Обратитесь к вашему интернет-провайдеру или хостинг-компании с просьбой разблокировать этот порт. Если они откажутся, вам потребуется настроить SMTP-ретрансляцию для обхода блокировки порта 25.
По-прежнему не удается отправить электронное письмо?
Если исходящий порт 25 не закрыт, но отправка электронных писем с вашего почтового сервера на другие почтовые адреса, например Gmail, все равно не осуществляется, рекомендуется просмотреть журнал почты (/var/log/mail.log).
sudo nano /var/log/mail.log
К примеру, в файле могут быть представлены такие строки для некоторых пользователей.
host gmail-smtp-in. l.google.com[2404:6800:4003:c03::1b] сказал: 550-5.7.1 [2a0d:7c40:3000:b8b::2] Наша система обнаружила, что 550-5.7.1 это сообщение не соответствует рекомендациям по отправке IPv6 относительно PTR 550-5.7.1 записей и аутентификации . Пожалуйста, ознакомьтесь с 550-5.7.1 https://support. google.com/mail/?p=IPv6AuthError для получения дополнительной информации
Это говорит о том, что ваш почтовый сервер отправляет электронные письма через IPv6, но записи IPv6 не были настроены. Вам необходимо зайти в DNS-менеджер, добавить запись AAAA для mail.your-domain.com и установить запись PTR для вашего IPv6-адреса, как упоминалось на шаге 8.
Применение почтовых программ на вашем ПК или мобильном устройстве
Откройте свой настольный почтовый клиент, например Mozilla Thunderbird, и настройте новый почтовый аккаунт.
- В разделе настроек входящего сервера выберите протокол IMAP, укажите mail.your-domain.com в качестве имени сервера, выберите порт 143 и активируйте STARTTLS. В качестве метода аутентификации выберите обычный пароль.
- В разделе настроек исходящего сервера выберите протокол SMTP. Укажите mail.your-domain.com в качестве имени сервера, установите порт 587 и выберите STARTTLS. В качестве метода аутентификации выберите обычный пароль.

Можно также воспользоваться IMAP на порту 993 с использованием шифрования SSL/TLS.
Оптимизация почтовых рассылок
Для того чтобы ваши письма не попадали в спам, необходимо правильно настроить записи PTR, SPF, DKIM и DMARC.
Запись типа PTR, или запись указателя, связывает IP-адрес с полностью квалифицированным доменным именем (FQDN). Она служит аналогом записи A и применяется для обратных DNS-запросов, что может быть полезно для борьбы со спамом. Многие SMTP-серверы отказываются принимать сообщения, если для сервера-отправителя отсутствует запись PTR.
Чтобы осуществить проверку записи PTR для IP-адреса, введите следующую команду:
dig - x IP-адрес +short
host IP-адрес
Запись PTR не находится под контролем вашего регистратора доменов. Она управляется организацией, которая предоставляет вам IP-адрес. Так как IP-адрес вы получаете от хостинг-провайдера или интернет-провайдера, а не от регистратора, вам необходимо настроить запись PTR для вашего IP-адреса в панели управления вашего хостинг-провайдера или обратиться к интернет-провайдеру. В качестве значения записи должно быть указано имя вашего почтового сервера, например: mail.your-domain.com. Если ваш сервер использует IPv6-адрес, также не забудьте добавить запись PTR для этого IPv6-адреса.
Для изменения записи обратного DNS на вашем VPS Kamatera необходимо войти в клиентскую зону Kamatera, после чего создать заявку в службу поддержки. Укажите им просьбу добавить запись PTR для вашего IP-адреса, направляющую на mail.your-domain.com. Хотя этот процесс может показаться не совсем удобным, он важен для защиты платформы от спама, что позволяет обеспечить хорошую репутацию IP для законных отправителей электронной почты, таких как мы.
Запись SPF (Sender Policy Framework) определяет, какие IP-адреса или хосты имеют право отправлять электронные письма от имени вашего домена. Рекомендуется разрешить отправку почты только вашему собственному почтовому серверу или серверу вашего интернет-провайдера. В панели управления DNS создайте новую TXT-запись, следуя приведённым ниже инструкциям.

- TXT обозначает, что это текстовая запись.
- Введите символ @ в строку имени, чтобы указать главное доменное имя.
- v=spf1 обозначает, что это запись SPF, а версия — первая.
- MX указывает на то, что все хосты, перечисленные в MX-записях, могут отправлять электронные письма от вашего домена, в то время как остальные хосты не имеют на это права.
- ~Все свидетельствует о том, что письма с вашего домена должны поступать исключительно от хостов, указанных в записи SPF. Сообщения, отправленные с других хостов, будут считаться поддельными.
Чтобы выяснить, доступна ли ваша запись SPF в открытом интернете, можно воспользоваться утилитой dig на компьютере с операционной системой Linux следующим образом:
dig your-domain.com txt
Опция txt указывает dig, что необходимо запрашивать исключительно записи формата TXT.
Запись DKIM (DomainKeys Identified Mail)
DKIM (DomainKeys Identified Mail) применяет закрытый ключ для создания цифровой подписи для писем, отправляемых с вашего домена. Получающие SMTP-серверы осуществляют проверку этой подписи, используя открытый ключ, размещённый в DNS-записи DKIM.
Когда мы ранее добавили доменное имя в админ-панели Modoboa, мы активировали подпись DKIM, и эта часть уже была настроена. Теперь нужно лишь создать запись DKIM в DNS-менеджере. Сначала зайдите в админ-панель Modoboa и выберите нужное доменное имя. В разделе DNS нажмите кнопку для отображения ключа. Будет представлен открытый ключ. Существуют два формата, однако нам необходим только формат Bind/named.
Откройте менеджер DNS и создайте новую запись типа TXT, указав modoboa._domainkey в поле для имени. (Помните, что мы использовали modoboa как селектор при добавлении домена в админку.) Скопируйте текст из скобок и вставьте его в поле значений, предварительно убрав все двойные кавычки. Возможно, вашему DNS-менеджеру потребуется удалить другие недопустимые символы, например, символы возврата каретки.

Учтите, что процесс распространения вашей записи DKIM в Интернете может занять некоторое время. В зависимости от вашего регистратора доменов, DNS-запись может обновиться сразу или понадобиться до 24 часов. Чтобы проверить статус распространения записи DKIM, вы можете посетить сайт https://www.dmarcanalyzer.com/dkim/dkim-check/, ввести «modoboa» в качестве селектора и указать ваше доменное имя. Для тех, кто заинтересован, Modoboa применяет OpenDKIM для создания приватного ключа для доменного ключа и проверки подписей на входящих письмах.
Запись для протокола DMARC
DMARC расшифровывается как проверка подлинности сообщений на уровне домена, отчетность и контроль соответствия. Этот механизм позволяет почтовым серверам различать легитимные письма и защищает ваш домен от использования для фишинговых атак и подделки электронной почты. Для создания записи DMARC откройте ваш DNS-менеджер и добавьте запись типа TXT. В поле имени укажите _dmarc, а в поле значения вставьте следующее:

Упомянутая выше запись DMARC является надежной отправной точкой. Для полного понимания DMARC рекомендуем ознакомиться с данной статьей.
Проверка оценки и рассылки электронной почты
После настройки записей PTR, SPF и DKIM зайдите на сайт https://www.mail-tester.com. Там будет отображен уникальный почтовый адрес. Отправьте на него письмо с вашего домена и проверьте свою оценку. Как видите, мне удалось получить максимальный результат.

Сайт Mail-tester.com отображает лишь оценку отправителя. Альтернативный сервис, GlockApps, предоставляет возможность проверить, поступает ли ваше письмо в папку входящих, спам или вовсе отклоняется. Он работает с рядом популярных почтовых служб, таких как Gmail, Outlook, Hotmail, YahooMail, iCloud и другие.

Почтовый ящик Microsoft отклоняет электронное письмо?
Microsoft применяет собственный черный список, который ограничивает доступ для множества законных IP-адресов. Если ваши письма не проходят через Outlook или Hotmail, вам следует выполнить рекомендации по ссылке ниже, чтобы обойти блокировку Microsoft Outlook.
Автоматическое обновление сертификата TLS от Let’s Encrypt
Modoboa установила последнюю версию клиента Let’s Encrypt (certbot) в директории /opt/certbot-auto. Чтобы узнать, где находится бинарный файл certbot, выполните следующую команду.
sudo find / - name "*certbot*"
Сертификат TLS Let’s Encrypt имеет срок действия 90 дней. Для автоматического продления сертификата необходимо внести изменения в файл crontab пользователя root.
sudo crontab - e
Вставьте данную строку в конец этого документа.
@daily /opt/certbot-auto renew - q && systemctl reload nginx postfix dovecot
Сохраните и закройте файл. Это указывает Cron выполнять команду renew certbot ежедневно. Если до окончания срока действия сертификата остается 30 дней, certbot его обновит. После этого потребуется перезапустить веб-сервер Nginx, SMTP-сервер Postfix и IMAP-сервер Dovecot, чтобы они смогли получить новый сертификат.
Для работы с клиентом Microsoft Outlook вам нужно активировать порт SMTPS 465 на SMTP-сервере Postfix.
Для начала рекомендуется выбрать VPS с объемом оперативной памяти не менее 2 ГБ. Установка Modoboa на сервере с 1 ГБ ОЗУ может привести к сбоям в работе базы данных, а также к проблемам с SpamAssassin или ClamAV из-за недостатка памяти. Если вы всё же решите использовать VPS с 1 ГБ ОЗУ, это может повлечь за собой потерю входящих писем и другие негативные последствия.
В случае недоступности веб-интерфейса Modoboa, например, при возникновении ошибки 502, рекомендуется просмотреть логи Nginx, находящиеся в каталоге /var/log/nginx/, для выявления возможных причин проблемы. Кроме того, стоит проверить журнал почтовых сообщений по пути /var/log/mail.log.
Убедитесь, что все разные сервисы функционируют корректно.
systemctl status postfix systemctl status dovecot systemctl status nginx systemctl status mariadb systemctl status clamav-daemon systemctl status amavis systemctl status uwsgi systemctl status supervisor
Если брандмауэр активирован, необходимо разрешить доступ к следующим портам.
HTTP порт: 80 HTTPS порт: 443 SMTP порт: 25 Порт отправки: 587 (и 465, если вы собираетесь использовать почтовый клиент Microsoft Outlook) IMAP порт: 143 и 993
Чтобы начать использовать брандмауэр UFW, посмотрите моё руководство: Установка и настройка брандмауэра UFW на системах Debian и Ubuntu.
Я обратил внимание, что служба clamav-daemon часто останавливается без очевидных причин, даже при наличии достаточного объема оперативной памяти. Это приводит к задержке в получении писем на одну минуту. Мы можем настроить автоматический перезапуск этой службы через юнит systemd. Для этого необходимо скопировать исходный файл юнита в каталог /etc/systemd/system/.
sudo cp /lib/systemd/system/clamav-daemon.service /etc/systemd/system/clamav-daemon.service
После этого внесите изменения в файл юнита службы.
sudo nano /etc/systemd/system/clamav-daemon.service
Включите эти две строки в раздел [service].
Restart=always RestartSec=3
[Service] ExecStart=/usr/sbin/clamd --foreground=true # Перезагрузка базы данных ExecReload=/bin/kill - USR2 $MAINPID StandardOutput=syslog Restart=always RestartSec=3
Сохраните изменения в файле и закройте его. После этого перезагрузите systemd и заново запустите службу clamav-daemon.service.
sudo systemctl daemon-reload sudo systemctl restart clamav-daemon
Если при попытке войти в панель администратора Modoboa вы столкнулись с сообщением об внутренней ошибке, вам следует внести изменения в файл settings. py.
sudo nano /srv/modoboa/instance/instance/settings. py
Активируйте режим отладки.
DEBUG = True
Перезапустите uwsgi, чтобы новые настройки начали действовать.
sudo systemctl restart uwsgi
Попробуйте снова войти в панель управления Modoboa. На этот раз вы получите детализированное сообщение об ошибке. Например, на моем почтовом сервере это
соединение с базой данных не установлено на UTC

Таким образом, необходимо внести изменения в файл settings. py.
sudo nano /srv/modoboa/instance/instance/settings. py
и выключить часовой пояс.
USE_TZ = False
Сохраните файл и закройте его. Затем перезапустите uwsgi, чтобы обновления начали действовать.
sudo systemctl restart uwsgi
Autodiscover и AutoConfig облегчают процесс настройки почтовых клиентов на компьютерах и мобильных устройствах. Пользователю достаточно ввести свое имя, адрес электронной почты и пароль для активации почтовой учетной записи, не заботясь о настройках SMTP или IMAP серверов. Autodiscover работает с почтовым клиентом Microsoft Outlook, в то время как AutoConfig предназначен для Mozilla Thunderbird.
Modoboa применяет AutoMX для активации этой функции на вашем почтовом сервере. Теперь нам необходимо добавить записи CNAME в DNS. В вашем DNS-менеджере создайте две записи CNAME.
autoconfig.yourdomain.com CNAME mail.yourdomain.com autodiscover. yourdomain.com CNAME mail.yourdomain.com
Откройте вкладку «Домены» в админ-панели Modoboa. Если autoconfig выделен зеленым цветом, значит, ваши записи CNAME настроены правильно. Учтите, что Modoboa проверяет DNS-записи вашего почтового сервера каждые 30 минут, так что вам, возможно, придется подождать, прежде чем autoconfig станет зеленым.
После того как записи CNAME будут распространены в сети, вы сможете настроить почтовый аккаунт в Microsoft Outlook и Mozilla Thunderbird, не вводя данные SMTP или IMAP сервера.
Конфигурация резервного почтового сервера
Ваш основной почтовый сервер может время от времени быть недоступен. Если он размещён в дата-центре, вероятность простоя будет минимальной, и вы не должны переживать о потерях входящих писем. Однако если сервер находится у вас дома, то время простоя может быть непредсказуемым, поэтому целесообразно иметь резервный почтовый сервер в дата-центре для защиты от потери писем. Для работы резервного сервера достаточно 512 МБ оперативной памятию.

