SMTP 및 이메일 템플릿
관리자 위치: System › Settings › Email (
/settings/email) — SMTP 및 Email templates 탭. 전송 로그: Overview › Support › Sent emails (/support/emails).
작동 내용
NexCMP는 가입 인증, 비밀번호 재설정, "VM ready"(초기 비밀번호 포함), 인보이스, 잔액 부족, 갱신, 충족, 지원 답변 등을 위한 이메일을 발송합니다. 모든 이메일은 사용자가 제공하는 단일 SMTP 계정을 통해 전송됩니다. 메시지와 템플릿은 16개 언어로 제공되며 고객의 언어가 사용됩니다.
요구 사항
| 항목 | 요구 사항 |
|---|---|
| SMTP 서버 | 모든 제공업체의 호스트, 포트 및 자격 증명 (자체 서버, Brevo, Amazon SES, Mailgun, Google Workspace 등) |
| 네트워크 | NexCMP 서버에서 SMTP 호스트 및 포트로의 아웃바운드 TCP (587 STARTTLS, 465 TLS 또는 25) |
| 발신자 도메인 | 제공업체에 대해 SPF 및 DKIM이 게시되어 있고 DMARC 레코드가 있는 관리 중인 도메인 |
| 권한 | SMTP 계정은 From 주소로 발송할 수 있는 권한이 있어야 합니다. |
전송 안정성
"VM ready"와 같은 이메일에는 비밀번호가 포함됩니다. 발신자 도메인의 SPF/DKIM/DMARC가 SMTP 제공업체와 일치하지 않으면 스팸함으로 분류됩니다. 페이지에서 이를 상기시켜 줍니다.
이메일 제공업체 준비
- 제공업체 패널에서 발신 도메인을 추가하고 인증합니다 (예:
example.com). - 제공업체에 표시된 SPF, DKIM 및 DMARC DNS 레코드를 게시합니다.
- SMTP 사용자(또는 API-SMTP 키)를 생성하고 호스트, 포트, 사용자 이름 및 비밀번호를 기록합니다.
NexCMP에서 연결
- System › Settings › Email, SMTP 탭을 엽니다.
- 양식을 작성합니다:
| 필드 | 예시 | 참고 |
|---|---|---|
| 호스트 | smtp.example.net | SMTP 서버 |
| 포트 | 587 | |
| 보안 | STARTTLS (587) | 제공업체에서 요구하는 모드 선택 |
| 사용자 이름 | smtp-user | |
| 비밀번호 | (숨김) | 쓰기 전용: 설정 여부만 페이지에 표시됨 |
| 보내는 사람 이메일 | no-reply@example.com | 제공업체에서 인증되어야 함 |
| 보내는 사람 이름 | Example Cloud | 브랜드 이름이 기본값으로 지정됨 |
| 회신 주소 (선택 사항) | support@example.com | 고객 회신이 전송되는 위치 |

- Save를 클릭한 다음 Send test를 클릭하고 본인의 주소를 입력하세요.
설정은 접근이 제한된 파일(smtp.json, 모드 0600)에 저장되며 백그라운드 워커 nexcmp-vmd만이 메일을 발송합니다. 웹 서비스는 대기열에 추가만 합니다.
확인
- 테스트 메시지가 받은편지함에 도착합니다(스팸함도 확인하세요). 메시지 소스에서
dkim=pass및spf=pass을 확인합니다. - Support › Sent emails을 엽니다. 각 메시지에는 상태(대기 중, 발송됨, 실패)와 전송 결과가 표시됩니다. 실패한 메시지는 최대 3회까지 재시도됩니다.
- 포털에 테스트 고객을 등록하고 인증 이메일이 도착하는지 확인합니다.
이메일 템플릿 편집
Email templates 탭에는 모든 템플릿이 키별로, 존재하는 언어(예: verify_email, reset_password, vm_ready, invoice_paid, low_balance, topup_received, ticket_reply, scale_up 등)와 함께 나열됩니다.
- 템플릿을 클릭하고 언어를 선택합니다.
- 제목과 본문을 편집합니다. 메시지가 대기열에 추가될 때 플레이스홀더가 채워집니다.
- 저장합니다. 변경 사항은 이후에 대기열에 추가되는 메시지에 즉시 적용됩니다.

제한 사항 및 참고 사항
- 설치당 하나의 SMTP 계정이 사용됩니다. 리셀러가 별도로 설정되지 않은 경우, 리셀러의 고객도 동일한 계정을 통해 이메일을 받습니다.
- 공급자의 발송 제한이 적용되며, NexCMP는 재시도 외에는 별도로 조절하지 않습니다.
- SMTP가 없어도 패널은 작동하지만, 고객이 회원가입 인증 및 비밀번호 재설정을 완료할 수 없습니다.
Troubleshooting
| 증상 | 원인 | 해결 방법 |
|---|---|---|
| 테스트 이메일이 도착하지 않음 | 잘못된 자격 증명, 차단된 포트, 승인되지 않은 발신자 | journalctl -u nexcmp-vmd에서 SMTP 오류를 확인하고, STARTTLS와 함께 포트 587을 시도하며, 공급자에서 From 주소를 확인하세요. |
| 메시지가 스팸함으로 감지요 | SPF/DKIM/DMARC 누락 또는 불일치 | 공급자의 레코드를 게시하고 해당 도메인에서 발송하세요. |
| Sent emails에 "failed" 표시 | 공급자가 메시지를 거부함 | 공급자의 응답을 보려면 행을 엽니다. |
| 저장 후 비밀번호 필드가 비어 있음 | 설계상 의도됨(쓰기 전용) | 비밀번호가 저장되면 레이블에 "current: set"이 표시됩니다. |