SPF 포함 메커니즘은 이메일 전송 가능성을 개선하기 위해 각 서버에 대해 충족해야 하는 참조 또는 조건을 SPF 레코드 내부에 보관합니다. 실수로 타사 공급업체에 대한 포함 문구를 SPF 레코드에 추가하지 않으면 수신자에게 반송된 이메일과 같은 문제가 발생할 수 있으며 전체 반송률이 급격히 증가할 수 있습니다.
SPF 레코드의 '포함' 메커니즘이 무엇인지, 필요에 따라 SPF 포함 문을 최적화하는 방법을 알아보세요.
SPF 포함은 무엇을 의미하나요?
SPF 레코드 구문에서 "포함" 메커니즘은 이메일 서버가 "포함" 줄에 지정된 도메인과 일치하는 레코드가 있는지 확인하도록 전달할 레코드를 나타냅니다.
SPF "포함"은 전송 IP의 허용 여부를 확인할 때 SPF 레코드가 쿼리될 도메인을 가리킵니다. 발신 IP 주소가 SPF에서 정의한 "포함" 목록에 포함되어 있으면 일치하는 것으로 판정되어 SPF가 통과됩니다.
SPF 다중 포함 메커니즘의 중요성
SPF 포함이 중요한 이유는 다음과 같습니다:
"포함" 블록에 나열된 모든 도메인에 대해 SPF 레코드로 보호할 것을 지정합니다.
도메인에 특정한 규칙을 추가합니다.
SPF 포함 메커니즘을 사용하여 동일한 클래스 내의 모든 도메인에 적용되는 일반 필터링 규칙을 추가로 통합할 수 있습니다. 즉, 애플리케이션에서 여러 클래스의 이메일 주소를 지원하는 경우 include 문을 사용하여 수신자 주소의 클래스에 따라 보다 복잡한 필터링을 수행할 수 있습니다.
SPF 포함은 어떻게 작동하나요?
SPF 포함 메커니즘을 사용하면 도메인 소유자가 다른 도메인에 이메일 전송 책임을 위임할 수 있습니다. 일반적으로 도메인 소유자가 타사 서비스 또는 공급업체가 자신을 대신하여 이메일을 보내도록 권한을 부여하려는 경우에 사용됩니다.
SPF 포함 메커니즘의 작동 방식은 다음과 같습니다:
- 도메인 소유자가 SPF 레코드를 게시합니다.
- SPF 레코드에 메커니즘 포함은 이메일을 대신 보낼 권한이 있는 다른 도메인 또는 IP 주소를 지정합니다.
- 조회 프로세스 중에 발신자 도메인의 DNS에서 SPF 레코드가 검색됩니다.
- 수신 이메일 서버는 SPF 레코드를 평가하여 보내는 서버가 해당 도메인에 대해 이메일을 보낼 수 있는 권한이 있는지 확인합니다. SPF 레코드에 "포함" 메커니즘이 포함되어 있는 경우 수신 서버는 포함된 도메인의 SPF 레코드도 확인합니다.
- 수신 서버는 포함된 도메인의 SPF 레코드에 대해 DNS를 쿼리하여 재귀 조회를 수행합니다. 여러 계층의 인클루드 메커니즘이 있는 경우 이 프로세스가 계속됩니다.
SPF 포함 예시
예: SPF 레코드에 "include:_spf.google.com"이 있고 Google IP 주소에서 이메일을 전송하는 경우, 발신 IP가 해당 도메인의 SPF 레코드의 "포함" 메커니즘 내에서 발견되므로 승인된 이메일 발신자로 간주됩니다. 그 결과 이메일은 의도한 수신자에게 도달하기 전에 서버를 성공적으로 통과합니다.
Google을 확인된 전송 소스로 인증하려면 SPF 레코드 구문을 사용해야 합니다:
v=spf1 include:_spf.google.com ~all
SPF 멀티플을 권장하지 않는 이유는 무엇인가요?
여러 SPF 레코드 조회 중에 고려할 TXT 레코드에 대해 수신자 서버가 혼동할 수 있으며, 너무 많은 SPF에는 조회 제한인 10개를 빠르게 초과하는 여러 DNS 조회를 추가하는 것이 포함됩니다.
SPF 레코드는 문자열 v=spf1로 시작하는 TXT 유형 레코드로, 이메일 서버가 특정 이메일이 스팸인지 여부를 판단할 때 따라야 하는 규칙을 알려줍니다. 규칙에는 다음이 포함됩니다:
따라서 서버에 두 개의 개별 SPF TXT 레코드 항목이 있는 경우 이메일이 SPF 인증에 실패하고 PermError를 반환합니다. 수신 메일 서버가 어떤 규칙을 따라야 할지 모르기 때문에 두 TXT 레코드를 모두 무시하기 때문입니다.
SPF 레코드에 여러 도메인 또는 호스트 또는 IP 주소를 포함하는 방법은 무엇인가요?
1개 이상의 SPF 레코드를 포함하려는 경우 이메일 전송에 문제가 발생할 수 있습니다(예 이메일 스팸으로 거부됨) 문제가 발생할 수 있습니다. 이 문제를 해결하려면 문제가 되는 SPF 레코드를 삭제하고 SPF 포함을 통해 도메인 또는 호스트 항목을 단일 레코드 또는 줄로 병합하면 됩니다.
세계적으로 유명한 가전제품 제조업체 중 하나인 Lenovo.com에서 사용하는 수많은 호스트와 ip4 주소가 포함된 SPF 레코드의 예를 살펴보세요.
수행 시 SPF 레코드 조회 를 수행했을 때 4개의 도메인이 병합된 것을 발견했습니다:
- spf.messagelabs.com
- _netblocks.eloqua.com
- spf.protection.outlook.com
- spf.pfpool.lenovo.com
및 5개의 IP4 주소:
- 72.32.45.225
- 40.65.201.146
- 138.108.60.125
- 138.108.24.107
- 52.247.21.11
를 이렇게 하나의 레코드로 만들 수 있습니다:
v=spf1 포함:spf.messagelabs.com 포함:_netblocks.eloqua.com 포함:spf.protection.outlook.com 포함:spf.pfpool.lenovo.com ip4:72.32.45.225 ip4:40.65.201.146 ip4:138.108.60.125 ip4:138.108.24.107 ip4:52.247.21.11 ~all
SPF 레코드 의미 이해
위의 예를 고려하면 여러 호스트 또는 IP4 주소를 단일 SPF 레코드에 병합할 때 다음 규칙이 적용된다는 것을 알 수 있습니다.
SPF 레코드가 유효한 것으로 간주되려면 선언(시작), 도메인에 대한 인클루드 메커니즘 및 IP 주소에 대한 IP4 태그(가운데), 시행 규칙(끝)의 세 섹션이 있어야 합니다.
➜ 선언: 레코드는 다음과 같이 시작해야 합니다. v=spf1 로 시작해야 합니다(규칙에서 이 문자열을 다시 사용하지 마세요).
➜ 허용된 도메인: 추가 포함 를 추가합니다(모든 도메인에 대해 SPF 포함 메커니즘을 포함: 으로 사용해야 합니다).
➜ 허용된 IP: 추가 IP4 태그를 추가합니다(SPF 레코드에 추가하는 모든 IP 주소 앞에 IP4 태그를 사용해야 합니다).
➜ 시행 규칙: 하나로 레코드를 끝냅니다. ~all 문으로 레코드를 끝냅니다(이 문자열은 마지막에 한 번만 사용).
SPF 포함에 관한 중요 참고 사항
'포함' 메커니즘은 다른 도메인 및 호스트를 SPF 레코드에 포함할 수 있어 메시지의 진위 여부를 확인하는 데 유용할 수 있으므로 SPF 레코드에 '포함' 메커니즘을 통합하는 것이 중요합니다.
그러나 SPF 레코드당 조회 횟수를 사용하는 데는 다음 규칙이 적용됩니다( 10.1 섹션에 언급된):
"SPF 구현은 '포함' 메커니즘 또는 '리디렉션' 수정자 사용으로 인한 조회를 포함하여 SPF 검사당 메커니즘 및 수정자 수를 최대 10개로 제한해야 합니다."
SPF 구현에서 메커니즘 및 수정자 수를 제한하지 않으면 연결할 수 없는 호스트에 대한 검사 중에 절전 모드로 전환됩니다. 이러한 호스트는 검사에 포함되지 않으므로 클라이언트로부터 메일을 수신하지 못합니다. 이로 인해 메일 배달에 심각한 문제가 발생할 수 있습니다.
SPF의 차이점은 다음과 같습니다:
SPF "포함" 메커니즘은 현재 도메인의 SPF 레코드 내에 다른 도메인의 SPF 레코드를 포함하는 데 사용되며, SPF "a" 메커니즘은 도메인에 이메일을 보낼 수 있는 권한이 있는 개별 IP 주소 또는 호스트 이름(A 레코드)을 지정하는 데 사용됩니다.
SPF 포함 대
사용해야 하는 이유
- 더 실용적이고 덜 복잡합니다.
- 관련 도메인에서 SPF를 활성화하지 않았기 때문입니다.
- SPF가 올바르게 구성되지 않았거나 A 레코드에 없는 다른 서버를 실수로 허용하기 때문입니다.
사용해야 하는 이유는 다음과 같습니다:
- 사이트의 도메인 이름에 유효한 SPF 레코드가 있다고 신뢰합니다.
- 반복하지 말아야 할 이유로 신뢰할 수 있는 단일 소스를 원하고, SPF 도메인은 복잡하기 때문입니다.
- 내 도메인을 포함하는 모든 도메인의 DNS를 편집하지 않고도 SPF 레코드를 변경할 수 있습니다.
SPF 포함 자동 최적화: 여러 도메인 및 IP 주소용
멀티 호스트, 멀티 IP 주소 SPF 레코드는 새로운 것이 아닙니다. 하지만 이러한 종류의 레코드를 구축하는 방법에는 다음과 같은 문제를 방지하기 위한 적절한 전문 지식이 필요합니다. SPF 인증 실패 또는 PermError.
제대로 작동하는 SPF 레코드를 구축하려면 include: 메커니즘을 올바르게 사용해야 합니다. 그리고 SPF 정책이 효과적이려면 여러 호스트와 IP 주소에서 제대로 구현되어야 합니다.
PowerDMARC의 SPF 평탄화 도구를 사용하면 모든 호스트와 IP 주소가 한 줄의 텍스트에 포함된 유효한 SPF 레코드를 생성합니다. 원하는 만큼 도메인과 IP를 추가할 수 있으며, 공백으로 구분하기만 하면 됩니다. 이를 하나의 SPF로 병합합니다. 포함 조회 한도를 초과하거나 이메일 전송 및 장애 문제가 발생하지 않습니다.
- PowerDMARC와 ConnectWise의 통합 - 2024년 10월 31일
- 데이터그램 전송 계층 보안(DTLS)이란 무엇인가요? 장점과 과제 - 2024년 10월 29일
- DMARC 및 FedRAMP: 이메일 보안 향상 - 2024년 10월 28일