Mailgun 을 이용하여 개인 도메인 메일 서버 구축하기

여러 레퍼런스들을 참고하여 진행하였지만, 가장 잘 정리된곳은 이곳 이다.

Mailgun 가입하기

Mailgun 서비스는, 기존에 존재하는 도메인을 이용해 메일 발송과 수신을 할 수 있게 해주는 서비스이다.
발송은 월 1만건까지 가능하며, 그 이상 되면 과금이 되는 형식이다.
또는 서비스 플랜에 가입하여 사용 가능하다.
수신의 경우 특정 메일로 포워딩을 해주는 서비스를 할 수 있다.
따라서 개인 이메일로 포워딩을 시켜 편하게 이메일을 받아 볼 수 있다.

https://www.mailgun.com/ 공식 홈페이지에서 회원 가입을 한다.
가입 이미지

가입을 할 때 카드 정보를 입력하지 않으면, 나중에 이메일을 보낼 경우

Free accounts are for test purposes only. Please upgrade or add the address to authorized recipients in Account Settings

라는 메세지가 뜨게 된다.
정보를 입력하지 않고 진행하고 테스트를 마친 후 정보를 입력해도 된다.

정보를 모두 입력하고 다음 단계로 넘어가면 이메일 인증을 거치며, 받은 이메일에서 링크를 클릭하면 SMS 인증을 하게 된다.

도메인 등록하기

모든것을 마치면 이제 도메인을 등록 할 차례이다.
로그인 하면 아래의 Add New Domain 버튼을 눌러주자.
add new domain

이후 도메인을 입력하는 창이 나오는데, abc.com 이라면 똑같이 적어주면 된다.
그런데 서브도메인을 쓰기를 권장한다.
서브도메인을 쓰면 @mail.abc.com 라는 주소로 생성이 되는 것이고, 쓰지 않는다면 @abc.com 으로 생성이 된다.
나같은경우 서브 도메인이 없이 등록을 하였다.

이후에는 각종 설정법들이 나온다.
도메인을 인증하는 과정인데, 영어를 읽을 수 있으면 그냥 하란대로 하면 되는데 대충 설명하겠다.
개인의 도메인 네임 서버 셋팅으로 가서, TXT 타입으로 정보를 추가해주고, MX타입으로 메일서버를 등록해주고, CNAME 을 등록하는 것이다.
모든 정보를 복사 붙여넣기로 세팅을 하고, 도메인 네임서버가 적용되기를 조금 기다리자.
아래와 같은 사진에서 Cehck DNS Records Now 를 누르자
verification

적용이 제대로 되면, 아래와 같이 모두 초록색으로 잘 뜬다.
verified

메일 보내기 테스트

메일 보내는법은 여러가지가 있는데, 나는 OSX 에서 가장 간편한 curl 로 보내보겠다.
공식홈페이지 문서를 보면, 아래와 같이 보내면 된다고 한다.

1
2
3
4
5
6
7
curl -s --user 'api:YOUR_API_KEY' \
https://api.mailgun.net/v3/YOUR_DOMAIN_NAME/messages \
-F from='Excited User <mailgun@YOUR_DOMAIN_NAME>' \
-F to=YOU@YOUR_DOMAIN_NAME \
-F to=bar@example.com \
-F subject='Hello' \
-F text='Testing some Mailgun awesomness!'

YOUR_API_KEY 부분과, URL을 도메인 설정에서 찾아 바꿔주고,
from, to, subject, text 부분을 본인에게 맞게 설정하면 된다.
정상적으로 보내졌다면 아래와 같은 메세지가 뜬다.

1
2
3
4
{
"id": "<해쉬값@abc.com>",
"message": "Queued. Thank you."
}

그런데 큐에 들어간 뒤에도 꽤 시간이 지나야 메일이 발송된다… 지금만 그런 것일까?..

도메인으로 이메일 받아보기

메뉴중에 Routes 로 들어간다.
routes

거기서 Create Route 메뉴를 누르고
Expression Type : Catch All (모든 메일을 포워딩한다)
Actions : Forward (체크박스에 체크하고 아래에 받아볼 메일 주소를 쓰면 된다)

이렇게만 설정을 한 후 적용을 시키면 정상적으로 작동한다.
다른 옵션을 쓰려면 다르게 해도 된다.

이후 @abc.com 으로 오는 모든 메일은 위에서 설정한 메일 주소로 모두 포워딩 되어 온다.

댓글