Проблемы с почтой Migadu

Здравствуйте,

У меня возникли проблемы с настройкой Discourse для использования моего SMTP-сервера (я использую Migadu в качестве почтового сервера).

Вот данные, которые я использую:

DISCOURSE_SMTP_ADDRESS: "smtp.migadu.com"
DISCOURSE_SMTP_USER_NAME: "community@kloclabs.com"
DISCOURSE_SMTP_PASSWORD: "<пароль>"
DISCOURSE_SMTP_ENABLE_START_TLS: true

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

При запуске ./discourse-doctor я получаю ошибку:

500 Unrecognized command

Всё кажется настроенным правильно, я могу подключиться к SMTP-серверу через telnet, проблем нет.

Надеюсь, кто-то сможет помочь.

Какой хост вы используете?
Вы пробовали указать порт? (587 или 2525 — в зависимости от того, какой поддерживает ваш провайдер)

Я размещаю его самостоятельно на выделенном сервере OVH.

Пытался указать порт 587, также добавил следующее в конфигурацию:

DISCOURSE_SMTP_AUTHENTICATION: login

но это не помогло. Я подтвердил свои права администратора через терминал, и теперь получаю другую ошибку:

550 Заголовок From не совпадает с пользователем для входа

Это невозможно. Вы должны запускать ./discourse-doctor точно так же, как запускаете ./discourse-setup. Вы запускаете ./discourse-setup, чтобы настроить SMTP, или редактируете app.yml вручную? Пересобираете ли вы (или запускаете ./launcher destroy app; ./launcher start app после внесения изменений)?

Я редактирую app.yml вручную, так как использую обратный прокси. Похоже, мне нужно изменить заголовок «from» в письме.

Хорошо, похоже, проблема решена. В Migadu требуется, чтобы в заголовке «From» письма совпадал адрес с аутентификацией. Добавление скрипта аутентификации, описанного выше, и настройка адреса отправителя для всех системных писем в настройках администратора, похоже, исправили проблему.

Если у кого-то возникла такая же проблема, выполните следующие действия:

  • Перейдите в папку Discourse: cd /var/discourse
  • Добавьте метод аутентификации в файл containers/app.yml: DISCOURSE_SMTP_AUTHENTICATION: login
  • Вручную создайте учётную запись администратора в терминале, так как вы не сможете получить письмо с подтверждением. Для этого выполните ./launcher enter app, затем rake admin:create и следуйте инструкциям, отображаемым в терминале.
  • Наконец, перейдите в настройки администратора и измените поле notification email на тот адрес электронной почты, против которого вы пытаетесь пройти аутентификацию.

Было бы проще, если бы в файле app.yml можно было задать адрес отправителя, однако я не нашёл способа сделать это.

Рад, что вы всё решили! Я не думаю, что видел это раньше.

Вот оно:

Или я просто не умею читать!.. Ого, спасибо!