Письма не отправляются после обновления

Привет, мои любимые системы форумов :slight_smile:

У меня проблема с отправкой почты из форума Discourse.

Когда я пытаюсь протестировать SMTP, всё проходит хорошо, как видно на скриншоте:

Я использую порт 587 для SMTP с STARTTLS:

  DISCOURSE_SMTP_ADDRESS: email.crypto.ba
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: rux@crypto.ba
  DISCOURSE_SMTP_PASSWORD: PASSWORD   
  DISCOURSE_SMTP_ENABLE_START_TLS: true

Но когда я добавляю эти параметры в app.yml и пересобираю приложение, оно просто не отправляет никаких писем.

Может кто-то подскажет решение?

Что может блокировать использование моего SMTP в Discourse? :frowning: В логах только ошибка «отказано в подключении».

(Возможно, вам придется немного подождать, пока мир немного повернется, чтобы получить помощь…)

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

Также я знаю, что где-то есть чек-лист для устранения неполадок с электронной почтой… возможно, эта тема:

Я протестировал свой SMTP вне контейнера, а теперь вы дали мне идею попробовать изнутри :slight_smile:

Спасибо за ссылку, сейчас проверю.

Что ж, мне удалось пройти проверку. При тестировании отправки почты через /admin/email статус показывает «ОТПРАВЛЕНО», но я не получаю никаких писем.

Странно, я могу войти в этот же почтовый ящик и отправлять, и получать письма.

Извините, у меня больше нет идей. Вы можете посмотреть пакеты, например, с помощью
tcpdump -c 19 -A -n port 587,
но так как трафик в основном зашифрован, это может не помочь. Это может показать, что соединение не установлено или отклонено.

Редактирование: Я обнаружил, что мне пришлось переключиться на порт 2525, но я не помню почему. Это, apparently, стандартная альтернатива.

Вы всё ещё застряли? Сейчас или через 48 часов — подходящее время, чтобы поднять эту тему с обновлением.

Извините, я не могу отправить письмо через Discourse. Я действительно не понимаю, почему это такая проблема. Я могу протестировать и использовать SMTP-сервер, но Discourse просто не отправляет через него.

Я использую свой собственный почтовый сервер (iRedMail), который работает уже почти 2 года без каких-либо проблем.

Меня действительно удивляет, в чём может быть проблема.

Я потратил последние 3 часа на проверку логов Discourse, чтобы выяснить, что может блокировать отправку писем. Это не ракетостроение, но безрезультатно.

Теперь я на этапе, когда могу отправлять письма: после нажатия кнопки «Отправить» появляется сообщение «Письмо отправлено», но я не получаю ни одного письма.

Вы пробовали Discourse-Doctor?

Он может отправлять письма, в том числе направлять их в службу оценки спама. Это отличный способ проверить, доставляются ли письма в известные сервисы или только в ваш собственный. Discourse-Doctor говорит:

Для надёжного теста получите адрес на mail-tester.com

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

Частая проблема заключается в том, что ваш форум находится по адресу forum.example.com, а адрес письма по умолчанию для уведомлений — noreply@forum.example.com, но ваш почтовый сервис настроен только для xxx@example.com. Если это так, то вам нужно изменить адрес для уведомлений (или перенастроить ваш почтовый сервер).

Форум находится по адресу https://forum.crypto.ba

image

Я нашёл решение — проблема была в настройках моего почтового сервера, мне нужно было добавить несколько параметров!

Теперь всё работает.

Проблема заключалась в ошибке:
“Recipient address rejected: Sender is not same as SMTP authenticate username”

Спасибо вам обоим. После прочтения ваших постов я каким-то образом пришёл к решению.