MTA-STS nedir, bu araç neye bakar
E-posta sunucuları arasındaki SMTP trafiği fırsat buldukça şifrelenir: alıcı sunucu STARTTLS sunmazsa veya yol üzerindeki biri bu teklifi silerse ileti düz metin olarak gider. MTA-STS (RFC 8461), bir alan adının gönderen sunuculara şunu söylemesini sağlar: "MX sunucularım geçerli bir sertifikayla TLS destekler; bunu sağlayamıyorsanız teslim etmeyin". İki parçadan oluşur: _mta-sts.<alan adı> adresinde, politikayı ve sürüm kimliğini duyuran bir TXT kaydı ile politikanın kendisi, yani https://mta-sts.<alan adı>/.well-known/mta-sts.txt adresindeki küçük bir metin dosyası.
OrbitProbe TXT kaydını okur, politika dosyasını gönderen bir sunucunun yapmak zorunda olduğu şekilde ister (HTTPS, sertifika denetlenir, yönlendirme izlenmez), version, mode, mx ve max_age alanlarını ayrıştırır, ardından alan adının MX kayıtlarını sorgulayarak her MX sunucusunun politikadaki mx kalıplarından biriyle eşleşip eşleşmediğine bakar.
Sonucu okumak
mode: enforce, MTA-STS destekleyen gönderenlerin TLS'i başarısız olan veya politikada yer almayan bir MX sunucusuna teslimi reddetmesi demektir. mode: testing iletiyi yine de teslim eder ve hatayı yalnızca raporlar; doğru ilk adım budur. mode: none politikayı geri çeker. max_age, gönderenin politikayı saniye cinsinden ne kadar süre önbellekte tutabileceğidir; politika oturduktan sonra bir hafta veya daha uzun süreler yaygındır, üst sınır 31557600 saniyedir (yaklaşık bir yıl).
Gerçek hayatta en sık görülen hata, MX kayıtlarıyla artık eşleşmeyen politikadır: e-posta yeni bir sağlayıcıya taşınmış, MX kayıtları değiştirilmiş, politika dosyası ise hâlâ eski sunucuları listeliyordur. enforce modunda bu, MTA-STS'e uyan her gönderenden gelen teslimatı engeller. Araç, hiçbir kalıbın kapsamadığı her MX sunucusunu bu yüzden adıyla gösterir.
TXT kaydındaki id yalnızca bir sürüm işaretidir. Gönderenler politika dosyasını id değiştiğinde yeniden alır; bu yüzden dosyayı her düzenlediğinizde id değerini de değiştirin.
Bu kontrolün söyleyemedikleri
Araç MX sunucularınıza bağlanmaz; dolayısıyla gerçekten STARTTLS sunup sunmadıklarını ve sertifikanın adla eşleşip eşleşmediğini sınamaz. Hangi gönderenlerin MTA-STS desteklediğini de bilemez. Başarısız olan bir sorgu "MTA-STS yok" olarak değil, "kontrol edilemedi" olarak gösterilir: zaman aşımı, kaydın bulunmadığının kanıtı değildir. enforce moduna geçmeden önce hataları gönderenlerden öğrenebilmek için MTA-STS'i TLS-RPT ile birlikte kullanın.