Нужна помощь/совет по настройке почты для самохостинга Discourse

Я уже несколько дней не могу найти ответ на этот вопрос в Google, возможно, я фундаментально неправильно понимаю настройку почты (ранее мне с этим сталкиваться не приходилось).

У меня есть домен (example.com), с которого работает мой сайт. Я настроил поддомен (forum.example.com), указывающий на Droplet от DigitalOcean с установленным Discourse (запись A в DNS). Поддомен работает, установка Discourse прошла успешно, и при переходе на поддомен я вижу экран регистрации администратора.

Также я настроил бесплатный тариф Mailjet, зарегистрировал домены example.com и forum.example.com с соответствующими DNS-записями и подтвердил их с помощью SPF/DKIM. В панели аккаунта Mailjet всё показывает зеленым цветом.

Проблема в том, что я вообще не получаю письмо с регистрацией. Я также запустил утилиту discourse-doctor, которая подтвердила успешное подключение к SMTP-серверу и принятие письма сервером, но письмо так и не пришло. В установке Discourse в качестве адреса отправителя указан «noreply@forum.example.com».

Меня смущает то, что адрес noreply@forum.example.com не существует. Фактически, ни один адрес вида «@example.com» не существует, так как сайт создан для местного спортивного/общественного клуба, и мы не хотели тратиться на хостинг почты, поскольку общение через почту не является основным (все социальные сети, как правило, используются чаще).

Так, может быть, Mailjet как-то автоматически создаст этот адрес, или проблема именно в том, что у меня нет запущенного сервиса почтового хостинга (например, Google Workspace/gSuite и т.д.)?

Есть ли какие-то идеи, почему это не работает, если проблема не в хостинге почты?

Буду очень благодарен за помощь, уже измучился с этой проблемой и не могу найти ответ :slight_smile:

Может ли эта система вообще отправлять письма, начиная с хоста за пределами контейнера Docker? Может ли она получать письма с внешних сайтов? (Нужно ли это?)

Что записано в логах почты?

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

Администрирование почты — довольно сложная задача. Я занимаюсь этим более 30 лет и почти каждый день узнаю что-то новое.

У меня ушло два полных дня, чтобы заставить мой тестовый сервер Discourse работать с почтой, а на запуск продакшн-сервера ушло всего 3–4 часа.

Вся наша входящая почта в настоящее время пересылается на адрес gmail.com. У нас не настроены корпоративные адреса электронной почты для домена, и нет хостинга для таких адресов.

Насколько я могу судить, системе требуется только отправлять уведомления и письма с подтверждением регистрации для Discourse от имени «noreply» в рамках поддомена форума.

Я пытаюсь разобраться, как работает экосистема электронной почты… Нужно ли мне для того, чтобы Mailjet мог отправлять письма от «noreply», создать адрес электронной почты «noreply» в домене у хостинг-провайдера? Например, в GSuite?

Скрипт discourse-doctor сообщает, что все соединения SMTP работают, то есть дроплет успешно подключается к Mailjet, но после этого ничего не происходит.
Кроме того, я никак не могу найти логи службы SMTP в Mailjet.

Нет, вам не нужно этого делать. Здесь есть пошаговое руководство по настройке Mailjet: Howto use Mailjet as a free SMTP service for Discourse. Вы выполнили все эти шаги?

Да, я следовал именно этому руководству при настройке :slight_smile:
Все DNS-записи работают корректно, согласно Mailjet, а Discourse-Doctor подтверждает успешное подключение к SMTP-серверу.
Теперь я задумываюсь: не связана ли эта проблема с Mailjet, а не с настройкой Discourse? Похоже, они могли заблокировать аккаунт :frowning:

Также спасибо за подтверждение, что мне не нужно настраивать отдельного почтового хостинга!

Списки заблокированных или запрещённых адресов электронной почты и сайтов — это постоянный кошмар администратора почтовой системы.

Можете ли вы вообще отправлять письма через SMTP-сервер? (Предполагаю, что он также не размещён на вашем собственном сервере.)

О, это неприятно! Я могу подтвердить, что Mailjet действительно работает… Сегодня я как раз настроил с его помощью один сайт. Так что, надеюсь, вам удастся решить проблему с аккаунтом.

@MikeNolan Я попытался отправить тестовую кампанию через Mailjet только на свою личную почту с адреса тестового домена, но она застряла в очереди. Похоже, Mailjet ограничил мой аккаунт! Придется решать проблему с поддержкой :slight_smile:

@awesomerobot Спасибо за подтверждение, что всё работает! Надеюсь, я смогу разобраться и запустить форум :slight_smile:

Проверьте логи почтового сервера и посмотрите, что он сделал с письмом.

Это не обязательно. Вы же не хотите получать почту.

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

Это говорит получателю: «Мои сообщения важны, ваши — нет».

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

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

Однако для некоторых сообщений ответ имеет смысл.

Вы можете настроить отправку ответов по электронной почте, если хотите. Если вы хотите включить эту функцию, вы можете настроить контейнер получателя mstm или использовать POP3.

Ответ по электронной почте (если вы имеете в виду ответ на пост, чтобы он стал частью обсуждения) — это отдельный вопрос от использования адреса do-not-reply@foo.bar в качестве адреса отправителя или адреса для ответов в письме, даже если это письмо носит административный характер.

Вам когда-нибудь приходило сообщение о сбросе пароля, которое не работало? Я получал их много. Так к кому обращаться, если такое случается?

Я получал счета, которые приходили с адреса do-not-reply@… Иногда мне кажется, что они на самом деле не хотят, чтобы я им платил.

Но среди администраторов почты это предмет некоторых споров. А я — старый ворчун.

У меня нет опыта работы с MailJet, но я знаю как минимум один очень известный пакет хостинга электронной почты, который делает поиск, не говоря уже о просмотре, журналов невероятно сложным. А что касается их умного поиска, ха!