Titan 메일 SMTP 설정이 작동하지 않아요

안녕하세요,

스탠얼론 서버에 Discourse를 설치하고 Titan Email을 이메일 제공자로 사용하고 있습니다.

하루 종일 커뮤니티를 검색해 보고 설정에 대해 생각할 수 있는 모든 변형(variation)을 시도해 보았지만, 여전히 이메일이 전송되지 않습니다.

제 설정은 다음과 같습니다.

## TODO: The SMTP mail server used to validate new accounts and send notifications
  # SMTP ADDRESS, username, and password are required
  # WARNING the char '#' in SMTP password can cause problems!
  DISCOURSE_SMTP_ADDRESS: smtp.titan.email
  DISCOURSE_SMTP_PORT: 465
  DISCOURSE_SMTP_USER_NAME: hello@mydomain.com
  DISCOURSE_SMTP_PASSWORD: mypass
  #DISCOURSE_SMTP_ENABLE_START_TLS: true
  DISCOURSE_SMTP_AUTHENTICATION: plain
  #DISCOURSE_SMTP_DOMAIN: community.mydomian.com
  DISCOURSE_NOTIFICATION_EMAIL: hello@mydomain.com

어디서 실수를 하고 있는지 도와주실 수 있나요?

포트를 587로 변경하면 작동하나요?

아니, 불행히도 그렇지 않습니다. Enable start TLS을 켜고 주석 처리한 상태로 587 포트를 사용했지만, 둘 다 작동하지 않았습니다.

Discord Doctor를 실행할 때 발생하는 오류도 함께 게시했어야 했는데, 다음과 같습니다.

======================================== ERROR ========================================
UNEXPECTED ERROR

Net::ReadTimeout

====================================== SOLUTION =======================================
이것은 흔하지 않은 오류입니다. 권장되는 해결책이 없습니다!

위와 같은 정확한 오류 메시지를 https://meta.discourse.org/ 에 보고해 주세요.
(해결책을 찾으면 그것도 함께 보고해 주세요!)

Replacing: SMTP_PASSWORD
Replacing: LETSENCRYPT_ACCOUNT_EMAIL
Replacing: DEVELOPER_EMAILS
Replacing: DISCOURSE_DB_PASSWORD
Replacing: Sending mail to

명령줄에서도 이 명령을 실행해 보았고, 정상적으로 작동했습니다. 그래서 app.yml 설정 파일에 문제가 있는 것 같습니다.

swaks --to bec@.com --from hello@.com --server smtp.titan.email --port 587 --auth-user hello@****.com --auth-password “mypass” --tls

호스트에서?

호스트에서는 작동하지만 컨테이너에서는 실패하나요?

어쨌든 수동으로 시도해 보시고 어디까지 진행되는지 확인해 보세요.

드디어 작동하게 되었습니다. 포트 번호를 587로 변경하고 ENABLE_START_TLS를 true로 설정했으며, #DISCOURSE_SMTP_AUTHENTICATION: plain 주석 처리를 했습니다.

오늘 어딘가에서 이 설정을 시도해 봤을 것이라고 확신했습니다. 아마 포트 번호를 뒤집어 넣었거나, 그 사이에 discourse를 다시 빌드하는 것을 잊었을 수도 있습니다. 교훈은 피곤하고 스트레스를 받을 때 일을 하지 않는 것입니다!