SMTP 이메일 설정
Mattermost v12.0요약
프로덕션 환경에서 Mattermost는 이메일 기반 인증 사용 시 이메일 알림 및 비밀번호 재설정을 위해 SMTP 이메일을 활성화해야 합니다. SMTP 이메일 서비스는 어떤 것이든 사용할 수 있습니다. SMTP 서비스가 없는 경우 Amazon Simple Email Service (SES) 로 설정할 수 있습니다:
사용 가능 플랜: Entry, Professional, Enterprise, Enterprise Advanced
프로덕션 환경에서 Mattermost는 이메일 기반 인증 사용 시 이메일 알림 및 비밀번호 재설정을 위해 SMTP 이메일을 활성화해야 합니다.
SMTP 이메일 서비스 설정#
SMTP 이메일 서비스는 어떤 것이든 사용할 수 있습니다. 다음 정보가 필요합니다: Server Name, Port, SMTP Username, SMTP Password.
SMTP 서비스가 없는 경우 Amazon Simple Email Service (SES) 로 설정할 수 있습니다:
- Amazon SES 콘솔 로 이동한 후 SMTP Settings > Create My SMTP Credentials 를 선택합니다.
Server Name,Port,SMTP Username,SMTP Password값을 복사합니다. 이 값들은 Mattermost 구성에 필요합니다.Domains메뉴에서 새 도메인을 설정하고 확인한 후 해당 도메인에 대해Generate DKIM Settings를 활성화합니다. 이메일 도메인에 대해 Sender Policy Framework (SPF) 및/또는 Domain Keys Identified Mail (DKIM)을 설정하는 것을 권장합니다.mattermost@domain.com과 같은 발신자 주소를 선택하고Send a Test Email을 선택하여 설정이 올바르게 작동하는지 확인합니다.
또는 아래에 나열된 서비스 중 하나를 사용하거나 서버 이름 127.0.0.1 과 포트 25 를 설정하여 로컬 sendmail 을 설정할 수 있습니다.
Docker 를 사용하여 Mattermost를 배포하는 경우 표준 docker 172.16.0.0/12 IP 범위가 사용되지 않습니다. 릴레이 접근 오류를 방지하려면 이메일 서비스에 IP 범위 192.168.0.0/24 를 지정합니다. postfix를 사용하는 경우 /etc/postfix/main.cf 에서 mynetworks = 192.168.0.0/24 를 지정합니다. 이는 Mattermost 배포 방법에 따라 다를 수 있습니다. 방화벽이 있는 경우 포트 25 가 열려 있는지 확인합니다.
Outlook365는 Basic Auth를 더 이상 지원하지 않습니다. Mattermost에는 Basic Auth가 필요합니다. AWS SES(Simple Email Service)와 같은 대체 이메일 서비스를 사용하는 것을 권장합니다.
SMTP 설정 구성#
- Mattermost에서 System Console > Authentication > Email 로 이동하고 이메일로 가입 허용 을 true 로 설정합니다.
- System Console에서 Notifications > Email 로 이동하여 SMTP 서비스에 맞게 Mattermost를 구성합니다. 자세한 내용은 SMTP 구성 문서를 참조하세요.
- Send Email Notifications 를 true 로 설정합니다.
- 알림을 보내는 계정의 알림 표시 이름 을 설정합니다.
- 알림 전송에 사용되는 이메일 주소를 위해 알림 이메일 주소 를 설정합니다.
- 초기 설정에서 복사한 SMTP 사용자 이름, SMTP 비밀번호, SMTP 서버, SMTP 포트 를 입력합니다.
- Mattermost와 SMTP 서비스 간의 통신을 암호화하려면 연결 보안: 를 TLS (Recommended) 로 설정하는 것을 권장합니다.
SMTPPort 및 관련 포트 설정은 문자열 연결이 필요한 host:port 바인딩 형식과의 호환성을 위해 문자열 형식(예: "465")을 사용합니다.
- 저장 를 선택합니다.
- 연결 보안 에서 연결 테스트 을 선택합니다. Mattermost는 이메일을 전송하여 SMTP 서비스에 대한 연결이 성공적인지 확인합니다. 테스트가 실패하면 Mattermost는 System Console에서 실패 이유에 대한 세부 정보를 제공합니다. 자세한 내용은 아래 Mattermost 로그 확인 섹션을 참조하세요.
샘플 SMTP 설정#
- SMTP 사용자 이름 을 [YOUR_SMTP_USERNAME] 으로 설정
- SMTP 비밀번호 를 [YOUR_SMTP_PASSWORD] 로 설정
- SMTP 서버 를 email-smtp.us-east-1.amazonaws.com 으로 설정
- SMTP 포트 를 465 로 설정
- 연결 보안 를 TLS 로 설정
Postfix가 Mattermost와 같은 시스템에 설치되어 있는지 확인합니다.
- SMTP 사용자 이름 을 (빈값) 으로 설정
- SMTP 비밀번호 를 (빈값) 으로 설정
- SMTP 서버 를 localhost 로 설정
- SMTP 포트 를 25 로 설정
- 연결 보안 를 (빈값) 으로 설정
- SMTP 사용자 이름 을 your_email@gmail.com 으로 설정
- SMTP 비밀번호 를 your_password 로 설정
- SMTP 서버 를 smtp.gmail.com 으로 설정
- SMTP 포트 를 587 로 설정
- 연결 보안 를 STARTTLS 로 설정
SMTP 이메일을 Google 서버를 통해 릴레이할 수 있도록 Google에서 추가 구성이 필요합니다. 필요한 단계는 SMTP relay: Route outgoing non-Gmail messages through Google 를 참조하세요.
- SMTP 사용자 이름 을 your_email@hotmail.com 으로 설정
- SMTP 비밀번호 를 your_password 로 설정
- SMTP 서버 를 smtp-mail.outlook.com 으로 설정
- SMTP 포트 를 587 로 설정
- 연결 보안 를 STARTTLS 로 설정
- SMTP 사용자 이름 을 your_email@hotmail.com 으로 설정
- SMTP 비밀번호 를 your_password 로 설정
- SMTP 서버 이름 을 smtp.office365.com 으로 설정
- SMTP 포트 를 587 로 설정
- 연결 보안 를 STARTTLS 로 설정
SMTP 문제 해결#
TLS/STARTTLS 요구 사항#
SMTP 사용자 이름 과 SMTP 비밀번호 를 입력한 경우 연결 보안 를 TLS 또는 STARTTLS 로 설정해야 합니다.
로그를 사용한 문제 해결#
SMTP 설치에 문제가 있는 경우 Mattermost 팀 사이트에서 System Console > Logs 로 이동하여 설정과 관련된 오류 메시지를 확인합니다. 오류 코드를 검색하여 문제를 좁혀볼 수 있습니다. ISP에서 SMTP에 대한 세부적인 설정을 요구하는 경우가 있으며 오류 코드가 적절한 조정 방법을 알려줄 수 있습니다.
예를 들어 System Console > Logs 에 다음 오류가 표시되면 554 5.7.1 error 와 Client host rejected: Access denied 를 검색합니다.
Connection unsuccessful: Failed to add to email address - 554 5.7.1 <unknown[IP-ADDRESS]>: Client host rejected: Access denied
알림 설정 확인#
자체 호스팅 Mattermost 배포를 위한 System Console의 SMTP 연결 테스트가 Connection unsuccessful: Failed to set the to address: 550 5.7.27 [test@example.com](mailto:test@example.com) 메시지와 함께 실패하면 System Console > Site Configuration > Notifications 로 이동하여 알림 표시 이름, 알림 발신 주소, 지원 이메일 주소, 알림 회신 주소 를 포함한 알림 설정이 올바르게 구성되어 있는지 확인합니다. Cloud 관리자는 알림 발신 주소 또는 알림 회신 주소 를 관리할 수 없습니다.
SMTP 서버 접근 가능 여부 확인#
-
이메일 서비스에 Telnet을 시도하여 서버에 접근할 수 있는지 확인합니다. 추가 정보는 https://learn.microsoft.com/en-us/exchange/mail-flow/test-smtp-with-telnet?view=exchserver-2019 를 방문하세요. Exchange Server 2019보다 이전 버전을 사용하는 경우 왼쪽 탐색 메뉴에서 버전을 선택합니다.
-
mattermost/bin/mattermost가 있는 동일한 시스템 또는 가상 인스턴스에서 다음 명령어를 실행해야 합니다. -
telnet mail.example.com 25로 이메일 서버에 Telnet합니다. 명령어가 작동하면 다음과 같은 내용이 표시됩니다:Trying 24.121.12.143... Connected to mail.example.com. 220 mail.example.com NO UCE ESMTP그런 다음
HELO <your mail server domain>과 같이 입력합니다. 명령어가 작동하면 다음과 같은 내용이 표시됩니다:250-mail.example.com NO UCE 250-STARTTLS 250-PIPELINING 250 8BITMIME
- Telnet은 공식 Mattermost Docker 이미지에 포함되어 있지 않으므로 해당 이미지에서는
ping을 사용하거나 Dockerfile을 수정하여 직접 Telnet을 설치해야 합니다. - 추가 지원이 필요한 경우 이전에 보고된 오류에 대해 문제 해결 포럼 을 검토하거나 Mattermost 사용자 커뮤니티에 참여하여 도움 받기 를 이용하세요.