설치 시작 전 이메일 설정 테스트

discourse-doctor 도구는 테스트 이메일을 보낼 수 있습니다. 이 기능은 discourse-setup 도구에도 추가되어야 합니다. 전체 소프트웨어 스택을 설정하기 전에 사용자가 입력한 SMTP 데이터가 정상적으로 작동하는지 확인하기 위해 빠른 이메일 테스트를 수행하세요. 메모에 명시된 바와 같이, 이메일 설정이 올바르지 않으면 시스템이 작동하지 않습니다.

설치를 담당하는 사람이 데이터 중 하나라도 잘못 입력하는 경우, 이 기능은 많은 시간을 절약해 줄 수 있습니다.

음. 이렇게 해서 반쯤 뇌사 상태(braindead)인 SMTP 테스트를 수행할 수 있는 것 같습니다:

echo Hello world > /tmp/mail.txt
curl -v  smtp://$DISCOURSE_SMTP_ADDRESS:$DISCOURSE_SMTP_PORT  \
  --mail-from noreply@$DISCOURSE_HOSTNAME \
  --mail-rcpt $(echo $DISCOURSE_DEVELOPER_EMAILS | cut -d ',' -f 1) \
  --user $DISCOURSE_SMTP_USER_NAME:"$DISCOURSE_SMTP_PASSWORD" \
  --upload-file /tmp/mail.txt 

따라서 이러한 테스트를 수행하는 것이 가능해야 합니다. 제 우려는 이것이 수많은 오陽성(false positive)과 오음성(false negative)을 유발할 수 있다는 점이지만, 실패 시 경고를 출력하는 것이 일부 사용자에게 도움이 될 수 있습니다.

아마 더 나은 아이디어는 문제가 있을 때 이러한 즉각적이고 대략적인 테스트를 수행하는 또 다른 스크립트(discourse-mail-check?)를 만드는 것일 수 있습니다.

사용자가 SMTP 정보를 입력한 직후 바로 테스트가 실행되기를 바랐습니다. 사용자가 제공한 주소로 테스트 이메일을 보내고, 사용자가 이메일을 받았는지 확인을 요청하는 방식입니다. 이메일을 받았다면 설치가 계속 진행되고, 받지 못했다면 재테스트를 하거나 SMTP 설정을 수정한 후 다시 시도할 수 있습니다.

2개의 좋아요

여기 Install Discourse on Amazon Web Services (AWS) with Lightsail, SES, and Route 53 - #4 by wal 의 제 게시물에 설명한 대로, telnet을 사용하여 여기 https://serverfault.com/questions/49935/easiest-way-to-send-a-test-email-from-a-server-to-test-settings 에 설명된 방법으로 전체 discourse-setup 스크립트를 실행하기 전에 테스트 이메일을 보낼 수 있었습니다.

특히, 해당 문서에 표시된 25번 포트 대신 587번 포트를 사용했으며, SMTP 사용자 이름과 비밀번호를 base64로 인코딩해야 한다는 점에 유의해야 합니다.

해당 게시물에 링크된 AWS에서 제공하는 스크립트에는 openssl 명령을 사용하여 동일한 작업을 수행하는 방법을 보여줍니다(링크: Creating configuration sets in SES - Amazon Simple Email Service ).

이메일 서버로 AWS SES를 사용하지 않는 경우 스크립트를 약간 조정해야 할 수 있지만, 일반적으로 설치 전에 이메일을 확인하기 위해 이 두 가지 방법 중 하나 또는 둘 다가 도움이 될 것이라고 생각합니다(저는 이렇게 했습니다).

설치 전에 이메일을 테스트할 수 있는 방법이 이상적으로는 존재해야 한다는 데 동의하지만, 설치 전체 과정을 거치지 않고 실행할 수 있도록 Discourse와 함께 독립적인 스크립트 형태로 제공되는 것이 더 바람직할 수 있다고 생각합니다. 설치 과정은 약 10분이 소요될 수 있기 때문입니다.

1개의 좋아요