이메일 발송 도메인 인증, SPF·DKIM·DMARC 설정 순서 5단계
이메일 발송 도메인 인증은 우리 도메인으로 메일을 보내는 서버를 SPF로 알리고, DKIM 서명을 붙이고, 인증에 실패한 메일의 처리 방법을 DMARC로 정하는 세 가지 DNS 설정으로 합니다. 이 글에서는 세 가지의 차이, Gmail 발신자 기준, 설정 순서 5단계를 정리했습니다.
이메일 발송 도메인 인증이 필요한 이유
홈페이지 문의 알림, 회원가입 메일, 주문 안내, 뉴스레터처럼 회사 도메인으로 나가는 메일은 생각보다 많습니다. 도메인 인증이 없으면 받는 쪽 메일 서버가 이 메일이 정말 우리 회사에서 보낸 것인지 판단하기 어려워 스팸함으로 보내거나 거부할 수 있습니다.
도메인 인증은 반대로 누군가 우리 도메인을 사칭해 보내는 메일을 걸러 내는 데도 쓰입니다. 정상 메일은 잘 도착하게 하고 사칭 메일은 막는 것이 도메인 인증의 두 가지 목적입니다.
Gmail이 요구하는 발신자 기준
Google의 이메일 발신자 가이드라인은 Gmail 개인 계정으로 메일을 보내는 모든 발신자에게 SPF 또는 DKIM 설정, 유효한 정방향·역방향 DNS, TLS 연결, 스팸 신고율 0.3% 미만 유지 등을 요구합니다. 하루 5,000건 이상 보내는 발신자에게는 SPF와 DKIM을 모두 설정하고 DMARC를 설정하며, 보낸사람 주소의 도메인을 SPF나 DKIM 도메인과 맞추고, 마케팅 메일에 원클릭 수신 거부를 넣으라고 요구합니다.
SPF·DKIM·DMARC 차이 비교
아래 표는 세 가지 인증이 각각 무엇을 확인하고 어디에 설정하는지 비교한 것입니다.
| 구분 | 확인하는 것 | 설정 위치 | 주의할 점 |
|---|---|---|---|
| SPF | 이 도메인으로 메일을 보내도 되는 서버 목록 | 도메인 DNS의 TXT 레코드 | 메일을 보내는 모든 서비스를 한 레코드에 포함 |
| DKIM | 메일에 붙은 전자 서명이 위조되지 않았는지 | 발송 서버의 개인 키와 DNS에 게시한 공개 키 | 발송 서비스마다 따로 켜야 함 |
| DMARC | SPF·DKIM 결과와 보낸사람 도메인의 일치 여부, 실패 시 처리 정책 | 도메인 DNS의 _dmarc TXT 레코드 | 처음에는 none 정책으로 시작 |
그림처럼 SPF와 DKIM은 메일이 정상 경로로 보내졌는지 확인하는 수단이고, DMARC는 그 결과를 바탕으로 받는 쪽에 어떻게 처리할지 알려 주는 정책입니다. 그래서 DMARC는 SPF와 DKIM이 갖춰진 뒤에 설정합니다.
SPF 레코드는 하나로 관리합니다
SPF 표준 문서인 RFC 7208은 한 도메인에 SPF 레코드가 여러 개 있으면 오류(permerror)로 처리한다고 정하고, 검사 중 DNS 조회를 일으키는 항목도 10개로 제한합니다. 메일 서비스를 새로 추가할 때는 레코드를 새로 만들지 말고 기존 레코드에 합칩니다.
이메일 도메인 인증 설정 순서 5단계
Google Workspace 관리자 도움말의 SPF 설정, DKIM 설정, DMARC 설정 안내를 바탕으로 정리한 순서입니다. 다른 메일 서비스도 큰 흐름은 같고, 세부 값은 각 서비스의 안내를 따릅니다.
- 발송 경로 목록 만들기: 회사 메일, 홈페이지 문의 알림, 쇼핑몰 주문 메일, 뉴스레터 서비스처럼 우리 도메인으로 메일을 보내는 곳을 모두 적습니다.
- SPF 설정: 목록의 발송 서비스를 하나의 SPF 레코드에 넣어 도메인 DNS에 추가합니다. 반영까지 최대 48시간이 걸릴 수 있습니다.
- DKIM 설정: 각 발송 서비스에서 DKIM 키를 만들고 공개 키를 DNS에 추가한 뒤 서명을 켭니다. Google은 2,048비트 키를 권장합니다.
- DMARC를 none으로 시작: SPF·DKIM을 설정하고 48시간 이상 지난 뒤, 정책을 none으로 두고 보고서를 받을 주소를 지정합니다.
- 보고서 확인 후 강화: 보고서로 정상 메일이 모두 인증을 통과하는지 확인한 뒤 quarantine(스팸함 격리)이나 reject(거부)로 단계적으로 올립니다.
그림의 1단계를 건너뛰면 SPF에서 빠진 서비스의 메일이 DMARC를 강화하는 순간 거부될 수 있습니다. 특히 홈페이지 서버가 직접 보내는 문의 알림 메일은 목록에서 자주 빠집니다.
설정이 됐는지 확인하는 법
Google 도움말은 DKIM 설정 뒤 외부 수신자에게 메일을 보내 원본 헤더의 인증 결과에서 DKIM이 통과로 나오는지 확인하라고 안내합니다. 나에게 보낸 메일로는 확인할 수 없습니다. DMARC 보고서는 양이 많을 수 있어 개인 메일함보다 전용 메일함을 쓰는 것이 좋습니다.
자주 하는 실수
- 메일 서비스를 바꿀 때마다 SPF 레코드를 새로 추가해 레코드가 여러 개가 된다.
- 뉴스레터 서비스에서 DKIM을 켜지 않아 대량 메일만 스팸함으로 간다.
- 보고서를 보지 않고 처음부터 reject로 설정해 정상 메일까지 거부된다.
- 쓰지 않는 발송 서비스를 SPF에서 지우지 않는다.
도메인 인증을 갖추면 우리 회사를 사칭한 메일도 걸러지기 쉬워집니다. 사칭 메일과 피싱 대응은 피싱 메일 수법과 대응, 가짜 사이트까지 나타났을 때는 사칭 사이트 대처 방법을 참고하세요.
디코랩이 돕는 방식
디코랩이 만드는 원페이지 홈페이지에는 문의 폼과 카카오톡 알림톡 연동이 무료로 포함되며(발송 이용료 별도), 운영 중인 사이트의 메일 발송 문제는 유지보수·개선 작업으로 상담할 수 있습니다. 자세한 내용은 디코랩 서비스 소개에서 확인하세요.
자주 묻는 질문
SPF만 설정하면 충분한가요?
Gmail 기준으로 소량 발신자는 SPF 또는 DKIM 하나를 요구하지만, 하루 5,000건 이상 보내면 SPF·DKIM·DMARC가 모두 필요합니다. 사칭 방지까지 생각하면 세 가지를 모두 설정하는 것이 좋습니다.
DMARC를 설정하면 메일이 안 갈 수도 있나요?
none 정책은 메일을 그대로 전달하고 보고서만 받습니다. quarantine이나 reject로 올리기 전에 보고서로 정상 메일이 모두 통과하는지 확인하면 이런 문제를 막을 수 있습니다.
DNS 설정은 어디에서 하나요?
도메인을 관리하는 업체(도메인 호스트)의 DNS 관리 화면에서 TXT 레코드를 추가합니다. 메일 서비스 관리 화면이 아니라 도메인 쪽에서 한다는 점을 기억하세요.
홈페이지에서 보내는 메일이 스팸함으로 간다면 사이트 주소와 쓰고 있는 메일 서비스를 적어 디코랩 프로젝트 문의로 보내 주세요.
댓글0
댓글 작성 권한이 없습니다