Commento 사용을 위한 메일 서버를 찾다보니 얻어 걸린 메일 서비스이다. 한달 10000통까지는 무료이다. 주의할 점이라면, 자체 메일함을 제공하지 않기 때문에, 메일을 abc@abc.com으로 수신하려면 Route
을 반드시 설정해서 다른 이메일로 전달하거나, 특정 url을 실행해서 타 시스템에 전달하거나 해야 한다. 즉 메일이 수신될 경우, mailgun이 설정된 route들을 실행하기만 하기 때문에, 보관하거나 하려면 별도의 설정을 해야 한다는 의미이다.
Domain 인증
Godaddy의 경우, Host에 아무 것도 쓰지 않을 경우에는 @
을 기재해야 한다. Host가 값을 가질 경우는, 최상위 도메인은 쓰지 않고 생략해야 한다. 즉, 서브 도메인을 위해 CNAME 레코드를 email.abc.com에 대해 설정하려면, Host에는 email
하고(email.abc.com
에서 최상위 도메인 .abc.com
을 제외한 부분) Value에는 mailgun.org
로 설정하는 식이다. 또한 TTL은 최저값이 600초이다.
CNAME email mailgun.org 600 seconds
MX @ mxa.mailgun.org (Priority: 10) 600 seconds
MX @ mxb.mailgun.org (Priority: 10) 600 seconds
TXT smtp._domainkey k=rsa; p=xxxxxx+xxxxxx 600 seconds
설정 후 도메인 설정 페이지인 https://app.mailgun.com/app/domains/abc.com
로 가서 Domain Verification & DNS
에 있는 Check DNS Records Now
버튼을 눌러서 인증이 잘 되었는지 확인한다.
SMTP 계정 확인
https://app.mailgun.com/app/domains/abc.com
에 가보면 Domain Information
섹션에 Default SMTP Login
과 Default Password
가 있다.
Swaks로 이메일 송신 테스트
이메일 송신 테스트용 어플 Swaks을 써보자.
cd ~/Downloads
curl http://www.jetmore.org/john/code/swaks/files/swaks-20130209.0/swaks -o swaks
chmod +x swaks
sudo apt-get -y install perl
./swaks --auth --server smtp.mailgun.org:587 --au postmaster@abc.com --ap xxx-xxx-xxx --from postmaster@abc.com --to 받고싶은메일주소@gmail.com --h-Subject: "Hello" --body 'Testing some Mailgun awesomness!'
성공했다고 나오면 --to 받고싶은메일주소@gmail.com
에 접속해서 테스트 메일이 잘 도착했는지 확인해보면 된다.
Route설정해서 이메일 수신 테스트
위에서 설명한 대로, MailGun의 경우 이메일 수신함이 없다. 대신에 수신되는 이메일이 있는 경우, 설정한 Route들을 차례대로 실행해준다. 그 Route들을 통해, 다른 이메일로 전달하거나, Web Hook(특정한 url)을 실행해주거나 할 수 있다. 일단 이메일 전달하는 것으로 테스트해보기로 하겠다.
- 먼저
https://app.mailgun.com/app/routes
접속 후Create Route
버튼을 누른다. Expression Type
을Catch All
로,Actions
에서는Forward
를 체크하고 텍스트 상자안에 이메일을 전달받을 다른 이메일 주소를 기재하고 하단의Create Route
버튼을 다시 눌러서 저장한다.- 이제 보유한 다른 이메일에서
postmaster@abc.com
로 메일을 보냈을 때, 그 이메일이https://app.mailgun.com/app/logs
에서 나타나고, 설정한 Route대로 전달되었는지 확인하면 된다. 잘 되었다면https://app.mailgun.com/app/domains/abc.com/credentials
에 가서 사용자 이메일을 추가하고, Route에 설정하고 하는 식으로 추가해 나가면 된다.