네임서버 SPF(Sender Policy Framework) 설정 및 검증
본문
v=spf1 ip4:XXX.XXX.XXX.0/24 ip4:XXX.XXX.XXX.0/24 ip4:XXX.XXX.XXX.XXX ~all
본문
1. 개요
SPF(Sender Policy Framework)는 도메인 기반 메일 인증 기술로,
DNS에 발송 허용 서버를 명시하여 메일 위변조(Spoofing)를 방지하는 역할을 합니다.
SMTP 프로토콜의 구조적 한계(발신자 위조 가능)를 보완하기 위해 사용되며,
대부분의 메일 시스템(Gmail, Naver, Outlook 등)에서 기본적으로 검증됩니다.
2. 적용 목적
- 발신 도메인 위조 방지
- 스팸 메일 판정률 감소
- 메일 서버 신뢰도 향상
- 외부 SMTP 서비스와의 호환성 확보
3. DNS 설정 (보안 마스킹)
v=spf1 ip4:XXX.XXX.XXX.0/24 ip4:XXX.XXX.XXX.0/24 ip4:XXX.XXX.XXX.XXX ~all
4. SPF 레코드 구조 분석
SPF는 단일 TXT 레코드 내에서 아래와 같은 구조로 구성됩니다.
v=spf1 [mechanisms] [qualifier]
✔ 주요 구성 요소
구성설명
v=spf1SPF 버전 선언 (필수, 1회만 사용)
ip4IPv4 기반 발송 허용 서버
include외부 메일 서비스 허용
all기본 정책 (마지막 위치 필수)
5. 동작 원리 (메일 인증 흐름)
수신 서버는 SMTP 연결 시 발신 IP 확보
발신 도메인의 DNS TXT(SPF) 레코드 조회
SPF 정책에 따라 발신 IP 검증
결과 반환 (Pass / Fail / SoftFail / Neutral)
6. SPF 평가 결과 의미
결과의미
Pass허용된 서버
Fail (-all)명시적 거부
SoftFail (~all)비권장 (수신측 판단)
Neutral (?all)정책 없음
7. 설정 시 핵심 규칙 (중요)
★ 단일 레코드 원칙
SPF TXT 레코드는 반드시 1개만 존재해야 함
복수 존재 시 → PermError
all 메커니즘 위치
all은 반드시 마지막에 위치
이후 선언은 무시됨
☞ 잘못된 예
v=spf1 ip4:1.1.1.1 -all ip4:2.2.2.2
☞ 중복 선언 금지
❌ 잘못된 예
v=spf1 ... v=spf1 ...
공백 구분 필수
각 메커니즘은 공백으로 분리
8. 운영 전략 (실무 관점)
● 초기 운영 단계
~all
신규 환경에서 안전하게 적용
오탐 방지
● 안정화 이후
-all
허용된 서버 외 발송 완전 차단
보안 강화
9. 검증 방법
☞ DNS 조회
dig TXT example.com
☞ SPF 검사 도구
MXToolbox
Google Admin Toolbox
KISA DNS Checker
11. 확장 구성 (권장)
SPF 단독으로는 완전한 인증 체계가 아니므로
다음과 함께 구성하는 것을 권장한다.
☞ DKIM (서명 기반 인증)
메일 위변조 방지
공개키 기반 검증
☞ DMARC (정책 통합)
SPF + DKIM 결과 기반 정책 적용
보고서 수신 가능
12. 보안 및 운영 고려사항
내부 SMTP 릴레이 서버 포함 여부 확인
클라우드 메일 서비스(include) 추가 여부 검토
NAT 환경에서 실제 발신 IP 확인 필요
DNS 전파 시간 고려 (TTL)
댓글목록0