Discourse - SMTP from OVH

Hi,

I’m using SMTP server from OVH. I created login, password and opened discourse-setup file. After all, I do rebuild, but Discourse still don’t send mails. I saw topic on meta, but change configuration still don’t help.

Can anyone help?
Thanks!

Sorry for my English

Use one of the recommended email services.

My guess is that the domain name you are using is not approved by the mail host. By defaul Discourse will send from the host name of the site. Mail server is probably set for example.com and Discourse is using forum.example.com. There is a line at the bottom of the configuration file to change it.

Where? :thinking:

Yeah, mail serwer is smtp.example.com and I use forum.example.com

I managed to succeed with OVH, you have to add some things.

With a pro mail server (fr - uk)

  DISCOURSE_SMTP_ADDRESS: pro1.mail.ovh.net
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: email@forum.com
  DISCOURSE_SMTP_PASSWORD: "password"
  DISCOURSE_SMTP_ENABLE_START_TLS: true           # (optional, default true)
  DISCOURSE_SMTP_AUTHENTICATION: login  # (you need to add this line)

If you have a classic web hosting alongside the forum

  DISCOURSE_SMTP_ADDRESS: ssl0.ovh.net
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: email@forum.com
  DISCOURSE_SMTP_PASSWORD: "password"
  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (optional, default true)

But if you have a dedicated smtp server, can’t help, sorry

It should work

It don’t work :face_with_thermometer:

What offer did you use with OVH to access a webmail account?

If you only have a vps, they don’t provide a smtp account

This is free webmail. I have this with domain.

Your forum is in https? The port can change if it’s not the case

Yes

Should I change port? Whose port?

No, my examples are with forum on https.

You should contact OVH or check your guide in the webmail to know what smtp you have to put

OVH Email-Pro와 Discourse를 함께 성공적으로 사용하신 분 계신가요?
다음과 같이 설정해 보았습니다:

DISCOURSE_SMTP_ADDRESS: pro2.mail.ovh.net
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: admin@mydomain.com
DISCOURSE_SMTP_PASSWORD: mypassword
DISCOURSE_SMTP_ENABLE_START_TLS: true           # (선택 사항, 기본값 true)
DISCOURSE_SMTP_AUTHENTICATION: login  # (이 줄을 추가해야 합니다)

하지만 ./discourse-doctor로 테스트할 때 다음과 같은 오류가 발생합니다:
504 5.7.4 Unrecognized authentication type

유료 OVH Email-Pro 계정을 사용 중입니다.

정상적으로 작동하는 Discourse 설치 환경을 구축할 수 있을지에 대한 희망이 사라지고 있습니다. 여러 무료 이메일 계정을 시도해 보았지만 Discourse는 어떤 경우에도 이메일을 전송하지 못했습니다. 직접 postfix를 설정해 보기도 했지만 역시 실패했습니다.
이 기능은 Mailgun에서만 작동하는 건가요? :frowning:

SendGrid와도 잘 작동합니다.

네, 저는 여전히 OVH Email Pro 계정을 사용하여 운영 중인 포럼이 있으며, 다음과 같은 설정으로 잘 작동하고 있습니다.

  ## 새 계정 검증 및 알림 전송에 사용되는 SMTP 메일 서버
  DISCOURSE_SMTP_ADDRESS: pro1.mail.ovh.net
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: postmaster@*******
  DISCOURSE_SMTP_PASSWORD: "*********"
  DISCOURSE_SMTP_ENABLE_START_TLS: true           # (선택 사항, 기본값 true)
  DISCOURSE_SMTP_AUTHENTICATION: login

pro2 메일 서버의 설정이 변경되었을 수도 있지만, 그렇게는 생각되지 않습니다. enable start tls를 false로 설정하거나 다른 포트를 사용하여 시도해 볼 수 있으며, 여전히 가능할 것이라고 확신합니다.

빠르게 몇 가지 테스트를 해보고 싶다면 매번 앱을 다시 빌드할 필요가 없습니다. 다음을 실행하면 됩니다.

./launcher destroy app
./launcher start app

이렇게 하면 이메일 설정을 업데이트할 수 있습니다.

pro1.ovh로 전환해 보았지만… 동일한 오류가 발생합니다 :frowning: 어디에 문제가 있는지 전혀 모르겠습니다… 수많은 다른 계정을 시도해 보고, 설치를 여러 번 다시 구축해 보았지만 전혀 진전이 없어서 이미 짜증이 나고 있습니다…

이것만으로도 큰 도움이 됩니다. 정말 감사합니다. 다시 구축하는 데 몇 분이 걸렸고, 옵션 하나만 변경해도 몇 분을 기다려야 했습니다. 이렇게 하면 훨씬 빠릅니다.

감사합니다. 선택지와 아이디어가 거의 바닥나고 있습니다. 제 Discourse가 어떤 SMTP 서버와든 작동할 수 있는지 확인해 보기 위해 이 방법을 시도해 볼 수도 있겠습니다. OVH의 경우 저에게는 작동하지 않지만 다른 누군가에게는 작동한다고 하니, 이제 의문이 들고 있습니다…

한 가지 더 질문드립니다: OVH 메일 서버로 telnet을 실행해 보실 수 있을까요?
이 문제는 제 OVH 메일 서버가 기대하는 인증 방식과 관련이 있을 것 같습니다.

아래와 같이 시도해 보았습니다:

    telnet pro2.mail.ovh.net 587

그 결과:

    220 pro2.mail.ovh.net Microsoft ESMTP MAIL Service ready at Sun, 17 Jan 2021 15:50:55 +0100
    EHLO mydomain-assigned-to-my-emailpro.pl
    250-pro2.mail.ovh.net Hello [185.56.211.110]
    250-SIZE 104857600
    250-PIPELINING
    250-DSN
    250-ENHANCEDSTATUSCODES
    250-STARTTLS
    250-**AUTH GSSAPI NTLM**
    250-8BITMIME
    250-BINARYMIME
    250 CHUNKING

이것으로 보아, 제 OVH 메일 계정에 Discourse가 이해할 수 없는 어떤 인증 유형이 설정되어 있는 것 같습니다.
여러분이 서버로 telnet을 시도하면 어떤 결과가 나오나요? AUTH LOGIN 또는 AUTH PLAIN이 표시되나요?

수정: 그리고 한 가지 더: authoritative(권위 있는) 또는 non-authoritative(권위 없는) email pro 계정을 사용 중이신가요? 이것도 영향을 줄 수 있을 것 같습니다. 저는 OVH 메일을 authoritative 모드로 설정할 수 없어서 non-authoritative를 사용 중입니다.

아쉽게도 이 포럼의 OVH 계정을 관리하지 않아서 큰 도움을 드리기 어렵습니다. 저는 서버/Discourse 쪽만 관리하고 있을 뿐이거든요. 몇 년 전에 생성된 계정인데, 그때 이후로 이메일 계정 설정이 몇 가지 변경되었을 것 같습니다. 신규 사용자에게는 좀 더 어려울 수 있겠네요.

하지만 서버에 접근 권한이 있어서 명령어를 실행해 보았습니다. 도움이 될지는 모르겠지만, 이렇게 나타났습니다.

root@vps00000:~# telnet pro2.mail.ovh.net 587
Trying 37.59.xxx.xxx...
Connected to pro2.mail.ovh.net.
Escape character is '^]'.
220 pro2.mail.ovh.net Microsoft ESMTP MAIL Service ready at Sun, 17 Jan 2021 17:32:23 +0100
451 4.7.0 Timeout waiting for client input
Connection closed by foreign host.

(이메일에 대해 잘 아는 것처럼 보일 수 있지만, 사실 저는 초보입니다. 그냥 이것저것 시도해 보다가 몇몇 포럼에서는 작동하게 만들었을 뿐이에요 ^^)

OVH에 대해서는 잘 모르겠습니다. 죄송합니다.

하지만 저는 Discourse를 우리 자신의 Ubuntu 전용 서버, Linode 슬라이스, 그리고 macOS에 설치해 보았지만 SMTP 메일 관련 문제는 전혀 없었습니다.

다만, Docker 컨테이너 내부에서 SMTP 메일에 문제가 생길 수는 있지만, 이는 Discourse의 문제가 아니라 Docker 설정 문제입니다.

Steven, 이렇게 시도해 주셔서 정말 감사합니다.
다만 telnet을 시도하셨을 때, 지원되는 서버 기능 전체를 확인하기 위한 핵심 명령어를 입력하지 않으셨네요: EHLO
이 서버로 다시 telnet 연결을 시도해 주시고, 연결이 완료된 후 다음을 입력해 주시겠어요?

EHLO pro1.mail.ovh.net + Enter 키?

그러면 서버가 250으로 시작하는 몇 줄의 응답을 보내고, 그중 AUTH가 포함된 줄에서 지원되는 인증 유형이 나열됩니다. 사실 이건 사용자 문제라기보다는 서버 쪽 문제인 것 같습니다. 제가 시도해 봤을 때 사용자 이름을 입력하기도 전에 응답이 돌아오거든요. 그래도 Steven 님이 어떤 결과를 얻는지 보고 싶습니다. 만약 저와 같은 결과를 얻게 된다면, 왜 Steven 님에게는 작동하는데 저에게는 작동하지 않는지, 게다가 OVH Email Pro 인증이 Discourse에서 지원되지 않는다는 점을 고려할 때 정말 수수께끼가 될 것 같습니다. :thinking:

또 다른 점은, 처음에 메일 서버가 pro1이라고 말씀하셨는데 pro2라고 입력하셨다는 것입니다. 저도 같은 방법으로 할 수는 있지만, IP 지리적 위치 기반에서 다른 방식으로 작동하는 건지 모르겠습니다. 저도 이 분야에서는 초보입니다.

미리 감사드립니다!