Bir SPF kaydı açık sonuçları olan bir dizi testtir. İki nokta üst üste, eşittir işareti ve niteleyici arasındaki fark önemlidir. Sözdizimsel olarak geçerli bir değişiklik aynı zamanda kimin yetkili olduğunu, hangi DNS bağımlılıklarına ulaşıldığını veya işlemenin nerede durdurulacağını da değiştirebilir.
Kullanmak RFC 7208 §4.6, RFC 7208 §5.2 Ve RFC 7208 §6 dilbilgisi ve değerlendirme referansı olarak. Aşağıdaki örnekleri üretime yapıştırılacak kayıtlar olarak değil, sentetik fikstürler olarak ele alın.
Mekanizmaları değiştiricilerden ayırın
Bir mekanizma, bir girişin eşleşip eşleşmediğini sorar: örnekler arasında ip4, ip6, a, mx, include, mevcut ve tümü yer alır. Eşleştirme mekanizmasına eklenen bir niteleyici, sonucunu belirler: + geçer, - başarısız, ~ softfail ve ? doğal. Altında RFC 7208 §4.6.2niteleyici atlanırsa, + ima edilir.
Değiştiriciler eşittir işareti kullanır. redirect=policy.example.com Hiçbir mekanizma eşleşmediğinde değerlendirmeyi delege eder. exp=explain.example.com Belirli başarısızlık sonuçlarına ilişkin açıklayıcı metni tanımlar. Bunlar ek eşleştirme mekanizmaları değildir. Tanınmış değiştiricilerin kendi kuralları vardır; Sözdizimsel olarak geçerli, tanınmayan değiştiriciler göz ardı edilirken, tanınmayan bir mekanizma bir hatadır.
Bir kayıt v=spf1 ile başlar ve DNS olarak yayınlanır TXT kaydı değerlendirilen kimlikte. Aynı sahibindeki iki ayrı SPF kaydı, gönderenleri birleştirmenin bir yolu değildir; SPF kaydı seçimi geri dönüyor permerror altında RFC 7208 §4.5. Bir TXT kaydı içindeki birden fazla alıntılanan dize farklı bir temsildir ve altına boşluk eklenmeden birleştirilir. RFC 7208 §3.3.
Tam bir örneği izleyin
Geçerli bir söz dizimi, her adda bir SPF kaydı ve başarılı DNS alımı olduğunu varsayalım. Diyelim ki politika v=spf1 ip4:192.0.2.20 include:service.example.net -all. Dahil edilen politika: v=spf1 ip4:198.51.100.10 -all.
192.0.2.20 için ilk mekanizma eşleşir ve geçişi döndürür. Bu değerlendirme yolu için içerme gerekli değildir. 198.51.100.10 için ilk mekanizma eşleşmez, dahil edilen politika geçişi döndürür ve dış içerme, varsayılan + niteleyicisiyle eşleşir. 203.0.113.7 için dahil edilen politika dönüşleri başarısız olur; bu, içermenin eşleşmemesine neden olur ve dıştaki -all , nihai başarısızlığı sağlar.
Bu izleme, içermenin neden metin değiştirme olmadığını açıklar. Dahil edilen -all hizmetin politikasını kaçıran tüm adresleri hemen reddetmez. Eşleşmeyen bir içerme sonucundan sonra üst politika devam eder.
İşlemenin nerede durduğunu anlayın
Eşleştirme mekanizması olağan mekanizma değerlendirmesini sona erdirir. Ulaşılan bir terimden kaynaklanan bir hata da değerlendirmeyi sonlandırabilir. Dolayısıyla terimlerin yeniden düzenlenmesi sonucu veya alıcının sorgulaması gereken bağımlılıkları değiştirebilir.
Tüm mekanizmalar her zaman eşleştiğinden sonraki koşullar ek yetki sağlayamaz. A yönlendirme değiştirici Kaydın herhangi bir yerinde bir all mekanizması mevcut olduğunda göz ardı edilir. Yazma -all yönlendirmeler= policy.example.com acil bir geri dönüş yaratmaz.
Altında RFC 7208 §4.7, hiçbir mekanizma eşleşmezse ve yönlendirme yoksa varsayılan sonuç nötrdür. Amaçlanan bitişi açıkça belirtin, böylece başka bir yöneticinin ihmalin kasıtlı olup olmadığı sonucunu çıkarmasına gerek kalmaz.
Yolu ve kaydın tamamını kontrol edin
Yayınlamadan önce, yalnızca tanıdık bir IP ile eşleşmesi beklenen kısmı değil, sözdiziminin tamamını doğrulayın. Geçersiz bir politika, avantajlı bir erken eşleşme varsayarak güvenli hale getirilemez. Ardından yetkili IPv4 ve IPv6 girişlerini, yetkisiz girişi ve başarısız olan veya SPF kaydı döndürmeyen bağımlılıkları değerlendirin.
Değerlendirilen ana DNS terimi sınırı, özyineleme dahil olmak üzere a, mx, ptr, mevcut ve yönlendirme terimlerini kapsar. Alıntılanan TXT parçalarının sayısı değildir. Hem seçilen sonucu hem de ulaşılan DNS terimlerini gösteren bir izleme tutun. Boşluk payı olmayan bir politika tasarlamak yerine sağlayıcı bağımlılığına yönelik bütçe değişiklikleri.
İncelenebilir bir değişiklik yapın
Önerilen kaydı mevcut kaydın yanına yazın ve amaçlanan izin farkını normal dilde açıklayın. Önceki değeri ve TTL'yi koruyun, sonucu yetkili DNS ve yinelemeli bir çözümleyici aracılığıyla kontrol edin, ardından temsilcinin aldığı mesajları test edin.
Kabul koşulu yalnızca bir ayrıştırıcının dizeyi kabul etmesi değildir. Amaçlanan gönderenler doğru kimliği geçmeli, istenmeyen gönderenler izin almamalı ve gerekli DMARC hizalama bozulmadan kalmalıdır.
Pratik paket servis
Her birini okuyun SPF Türe, niteleyiciye ve konuma göre terim. Net bir değerlendirme izi, sözdizimi incelemesini bir noktalama işareti alıştırması yerine izin incelemesi haline getirir.
Kararın tekrarlanabilir olmasını sağlayın
İki kayıtlı fikstürde, yerel adres eklemeden önce geçer, hizmet adresi alt geçiş yoluyla geçer ve ilgisiz adres üst öğenin son hatasına ulaşır. Çocuğun bunun yerine SPF kaydı yoksa, ulaşılan include permerror değerini döndürür. Bu hata durumunu alt başarısızlık/eşleşmeme durumundan ayrı tutun. Bunlar analitik sonuçlardır, yürütülen bir ayrıştırıcı veya doğrulayıcı testi değildir.