Anasayfa » Maillerin Junk Klasörüne Düşmesi – Neden Maillerim Spam Olarak Algılanıyor? SPF – PTR – DKIM ve DMARC Kayıtları Nelerdir?

Makaleyi Paylaş

Güvenlik

Maillerin Junk Klasörüne Düşmesi – Neden Maillerim Spam Olarak Algılanıyor? SPF – PTR – DKIM ve DMARC Kayıtları Nelerdir?

Merhaba, son dönemlerde ciddi bir şekilde spam maillerin arttığı ve gönderilen maillerin spam’a düştüğü yönünde sorular & şikayetler geliyor bunun üzerine referans bir makale olması açısından bu konulara değinen bir makale hazırlamaya karar verdik. Öncelikle terimleri ve işleyişlerini açıklayalım sonrasında Spam’a düşme sebeplerini inceliyelim.

SPF Nedir ?

Sender Policy Framework teriminin kısaltması olan SPF , bir domainin dns kayıtlarına text record olarak eklenir ve kayıt içerisinde o alan adından mail gönderimi yapabilecek şartları belirler. ( IP demiyorum çünkü spf sadece ip doğrulaması yapmaz. ) Kısacası mailin doğru yerden gelip gelmediğini teyit eden bir mekanizmadır.

Örnek birkaç SPF Kaydı ;

Sponsor

1-)  v=spf1 a:mail.okanozbey.com a:mailsv.okanozbey.com mx –all

2-) v=spf1 a mx ip4:178.210.170.170 mx:mail.okanozbey.com ~all

SPF kayıtları v=spf1 ile başlar ve o kaydın bir SPF kaydı olduğunu gösterir.

A ve ip4 : çalışma mantığı olarak aynıdır her iki kayıtta verilen bilgiler mail gönderen SMTP sunucusunun maili gönderdiği ip adresi ile uyuşup uyuşmadığını kontrol eder. İkinci örnekte verilen kayıtta maili gönderen SMTP sunucunun maili gönderdiği ip adresi 178.210.170.170 değil ise SPF Check işlemi Fail olarak işaretlenir. Yine birinci örnekte verilen a:mail.okanozbey.com karşılığında kayıtlı olan ip adresi SMTP sunucunun mail gönderdiği ip adresi ile aynı değil ise SPF Check işlemi Fail olarak işaretlenir.

Mx : Maili gönderen smtp sunucunun maili gönderdiği ip adresi mx kaydında yer almıyorsa SPF Check işlemi Fail olarak işaretlenir.

PTR : PTR kaydında belirtilen kayıtlar mail gönderimi yapan SMTP sunucunun maili gönderdiği ip adresinin PTR kaydı ile eşleşmiyor ise SPF Check işlemi Fail olarak işaretlenir.

İnclude : Bu değer birden fazla spf kaydını tek bir kayıt içerisinde toplayabilmek için kullanılmaktadır.

Gelelim en sondaki kontrol mekanizmasının tavrını belirleyen ~all  , -all , +all , ?all seçeneklerine, bu seçenekler ile spf kaydımız kontrol edildikten sonra nasıl bir tavır sergileyeceğini söylemektedir.  Burada –All seçeneği verilen kayıtlar eşleşmiyorsa karşı sunucuya maili direk reddetmelisin bilgisi göndermektedir. Ancak diğer seçeneklerde spf kaydından birisi veya birkaç tanesi uyuşmuyorsa spf check işlemini SoftFail olarak işaretle ve maili alıp almamak senin sorumluluğunda demek oluyor ki bu benim tavsiye ettiğim bir yöntem değildir. Bu noktada spf kontrolünde ne olacağını kesin olarak belirtmek en mantıklı olanıdır bu sebeple olması gereken ve en katı değer olan –all ‘dır. Diğer seçeneklerde açık kapı bırakmış oluruz ve bu tavsiye ettiğim bir yöntem değildir.

Haydi birlikte Çözümpark spf kaydını inceliyelim ;

Cozumpark’ta spf kaydı olarak Office365 ve Toplu mail için iki tane include bulunuyor, include’lerin içerisini açalım ;

Yukarıda ki tanımda belirttiğim gibi spf.protection.outlook.com için verilen include içerisinde farklı bir spf kaydı daha var. Hatta include içerisinde farklı bir include daha mevcut.

Bu arada unutmadan ip4: seçeneği ile birlikte office365 ‘in yaptığı gibi subnet belirtebiliyorsunuz yani /24 bir subnet için 255 tane ip4 eklemenize gerek yok J

Spf mantığı bu kadar sıradaki ;

PTR Nedir ?

RDNS (Reverse Domain Name System) olarakta bilinen bu kayıt tipi ip adreslerini bir etki alanına eşler. A kaydının tersi olarak düşünebilirsiniz.

PTR kaydı mail gönderimlerinde en az spf kaydı kadar önemlidir ve yaygın olarak kullanılmaktadır. Mail gönderimi yapılan ip adresinin mail gönderen sunucu ile eşleşip eşleşmediği kontrol edilir.

Örneklendirelim ;
Maili göndere ip adresi 40.107.0.88 olsun

IP adresinin karşılığındaki PTR Kaydı : mail-eopbgr00088.outbound.protection.outlook.com

mail-eopbgr00088.outbound.protection.outlook.com dns kaydının karşılığında gerçekten ip adresi varmı diye kontrol ettiğimiz de 40.107.0.88 ‘e karşılık geldiği görülmektedir ve domain maili gönderen smtp sunucusunun domaini ile eşleştiği için başarılı bir ptr kontrolü diyebiliriz.

Bu noktada tavsiyem mail sunucunuzdaki ekli olan ip adreslerinin tamamına sunucunuzun hostname ismini verin ve karşılıklı A kayıtları PTR kayıtları birbirleri ile eşleşsinler.

 Şimdi sıradaki konumuz DKIM kaydı ;

DKIM Nedir ?

Domainkeys Identified Mail olarak geçen DKIM kaydı gönderilen bir mailin bir bölümünün karşı tarafa şifreli olarak gönderilmesi işlemidir. Karşı taraf kendisine gelen bu şifreli maili açabilmek için key’e ihtiyaç duyar bu key’ide maili gönderen domainin dns kaydında bulunan DKIM kaydından alır. Key’i aldıktan sonra maili dencrypt ederek şifresiz ve şifreli olan mail bölümlerinin birbirleri ile uyuşup uyuşmadığını kontrol eder. Mail içeriği birbirleri ile uyuşuyorsa DKIM kontrolü Pass olarak değerlendirilir ve mail başarılı bir şekilde alınır.

DKIM ‘de DNS’e eklemeniz gereken kayıt tipini mail sunucunuzda veya servis sağlayıcınızdan temin etmeniz gerekmektedir.

Örnek bir DKIM DNS kaydı ;
v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuXZn18sanUwG8g0FMFZOq7LEM+LY0Lrv3XjAxe4AQwG6f+HPUf8uoVebF+gkM6p9O5YrDj67lySsusv0cz1iFiIWmdDvToxJVvsFORm1gpZ7HE2r8ITq/4NLrHC9FG80sIqz0n8rgqFjn0O1kzHYMlQoFrLv6lxMqxwfKcmM3yHRc5/HSbrZVFvjIoKNp0QbLHekkMvprod7gqBurvz6LKVhyqBE8njP2FgsFWlVyRVk7QTS+AWt4LSqyvcM9iqUc+7zEEKQus1+S3CnIN75zuhmCHNpk9IcC/sbMcYhq6+uveudntR7p9kFO0V1rVAZrXqw1tNj0hdC2p9IUPOdFQIDAQAB;

Buradaki v=DKIM1 spf’te olduğu gibi kaydın tipini ve versiyonunu belirtir.

P değeri ise mail sunucunuzun maili gönderirkenki şifrelenmiş bölümü karşı taraf açabilsin diye kullanması gereken key’dir.

Bazı durumlarda tarafınıza default._domainkey şeklinde bir kayıtta verilebilri bu eklemeniz gereken text kaydının ismidir. İçeriğine ise DKIM kaydını eklemeniz gerekmektedir. DKIM kaydı spf ve ptr kontrolü kadar yaygın olmasa da günümüzde kullanılmaktadır.

DMARC Nedir ?

Domain-based Message Authentication, Reporting & Conformance ‘n kısaltılması olan DMARC DNS’e eklenen bir raporlama analiz ve bilgilendirme amacıyla kullanılan kayıt türüdür. Biraz daha açacak olursak , mail gönderiminiz için spf , ptr ve dkim kayıtlarınızı oluşturdunuz herşeyi ayarladınız ancak yine de sizin domaininiz kullanılarak pishing ve spoof yapılıyor olabilir bu tarz durumlar hakkında bilgi almak için dmarc kullanılmaktadır. DNS’e ekleyeceğiniz dmarc kaydı ile gmail yahoo Hotmail gibi global servisler kendilerine sizin alan adınızmış gibi gönderilen spoof ve pishing maillerini sizin dmarc kaydınızda bulunan mail adresine raporluyorlar. Gerçekten harika bir sistem değil mi ? Peki bunu nasıl oluşturacağız ;  

Örnek DMARC Kayıtları ;

1-) “v=DMARC1; p=quarantine;”

2-) “v=DMARC1; p=none; rua=mailto:abuse@cozumpark.com;”

DMARC kaydındaki ;

V : Bu değer DMARC versiyonunu belirtir ve şu an için standarttır.

P : Bu değer karşı sunucuya gelen spoof ve pishing mailler için nasıl bir aksiyon alınacağını belirtir.

  • none: Gelen spoof ve pishing mailler için hiçbir işlem yapılmaz.
  • quarantine: Gelen spoof ve pishing mailler spam olarak işaretlenir ve saklanır.
  • reject: Gelen spoof ve pishing mailler reddedilir.

Rua : Sizin adınıza gönderilen spoof ve pishing mailleri için karşı tarafın raporlama özelliği açık ise tarafınıza rapor gelir. Global mail platformları bunu desteklemektedir.

SP : Subdomainleriniz için farklı bir DMARC politikası ( P ) uygulanacak ise bu değer kullanılabilir. Yine P=reject kullanılmış gibi sp=reject yazabilirsiniz.

Pct : Bu değer ile birlikte karşı tarafa giden maillerin % olarak kaçına DMARC filtresinin uygulanacağını belirtebilirsiniz. Yazılmaması halinde gelen maillerin tamamına yani %100 ‘üne uygulanmaktadır.

Aspf : SPF ile uyumluluk özelliğidir. Gelen maillerin spf ile nasıl eşleşmesi gerektiğini ifade eder.

  • R : Releaxed olarak kullanılır.
  • S : Strict olarak kullanılır.

Örnek :

Kayıt tipi : Txt

İsim : _dmarc.alanadiniz.com

İçerik olarak ise : “v=DMARC1; p=reject; sp=reject; rua=mailto:destek@okanozbey.com; ruf=mailto:destek@okanozbey.com; rf=afrf; pct=100; ri=86400”

Dmarc oluşturma sihirbazı olarak ; https://www.unlocktheinbox.com/dmarcwizard/ adresini kullanabilirsiniz.

Alan adımız için tüm dns kayıtlarımızı tamamladık artık her yere mail gönderirim , toplu mail basarım spam atarım diye düşünmeyin maalesef öyle bir dünya yok J Bu kayıtları ekledikten sonra sağlıklı bir mail trafiği sergilemeniz gerekiyor aksi halde blacklist’e girme durumunuz var ve senderscore puanınızın düşme durumu var. Hadi yeri gelmişken senderscore nedir ona da değinelim ;

SenderScore : Mail gönderimi global’de bazı firmalar tarafından analiz edilmekte ve spam olup olmadığı kontrol edilerek gönderilen mailler genel itibariyle puanlanmaktadır. Bazı mail sunucuları artık mail gönderimlerinde bu puanlama sistemlerini kontrol eder oldular. MTA Poor hatası veya benzer hatalar aldığınız zaman Sender Score puanı kontrol etmeniz gerekmektedir.

http://www.reputationauthority.org/ bu site üzerinden alan adınıza ait puanlamayı kontrol edebilirsiniz.

Örneğin cozumpark.com alan adı Office365 ‘te barındığı için gönderim yapan ISP Microsoft olarak gözükmektedir ve domain olarak puanımız %100 gözüküyor yani bizden gönderilen mailleri seviyorlar ancak gönderilen ip’lerde %2 ve %3 ‘lük bir sapma durumu mevcut bazı durumlarda bu BAD olarak nitelendirilen daha yüksek çıkıyor ve bunun yüksek olması halinde mailler spam’a düşüyor veya karşı tarafa hiç ulaşmıyor.

Bu arada bunu en yaygın kullananda hotmail’in kendisidir. Hotmail’de inbox’a mail düşürebilmek için öncelikle alan adınızın yeni kayıt olmamış olması sender score puanlamasının yüksek olması ve güzel bir geçmişe sahip olması gerekmektedir.

Blacklist Blacklist diyoruz ancak nedir bu blacklist ?

Günümüzde bazı firmalar senderscore gibi mail trafiklerini analiz ederek gönderilen mail sayısı & mail içeriğinin orjinalliği & gönderilen maile dönülen cevaplar gibi bir çok kriteri inceleyerek kendi kriterleri dışına çıkan domainleri blacklist’e almaktadırlar. Yine bazı mail sunucularda bu blacklist firmalarını kullanmaktadır.

Örneğin ; zen.spamhaus.org en yaygın olarak kullanılan blacklist’lerden birtanesidir. Alan adınızdan yapılan toplu mailler sonrasında zen.spamhaus.org firması tarafından blacklist’e alındınız ve cozumpark.com’a mail atmak istediniz. Cozumpark.com blacklist kontrolü olarak zen.spamhaus.org’u kullanıyor ise sizden gelen mail sonrasında sizin ip adresiniz için blacklist kontrolü yapacaktır. Yaptığı blacklist kontrolünde sizin ip adresleriniz zen.spamhaus.org ‘da blacklist’te olduğu için cozumpark mail sunucusu bu gelen maili kabul etmeyecektir.

Blacklist’e sadece ip adresleri girmez, url blacklist denilen bir kontrol sistemi de mevcuttur. Bu sistemde mail içeriğinizde https://www.cozumpark.com gibi bir link bulunuyor ise ve bu link url blacklist’e geçiyorsa bu mail yine karşı mail sunucu tarafından reddedilebilir.

Son olarak değinmek istediğim bir nokta var  o da Toplu Mail  veya diğer bir adıyla Mailing

Toplu mail bir çok firmanın müşterilerine reklam veya bülten göndermek için kullandığı bir sistemdir ancak bunu kullanırken de dikkat etmeniz gereken çok kritik konular var.

Örnek ; Gönderilen bir mailde unsubscribe satırının muhakkak olması gerekmektedir.

Başka bir örnek ; Gmail , yahoo , Hotmail  gibi platformlara gönderilen maillerde mailleriniz çok fazla spam olarak işaretle seçeneğine maruz kalıyor ise buda alan adınızın senderscore ‘unu etkileyecek blacklist’e girmenizi sağlayacak ve ileride ciddi sorunlara sebep olacaktır. Bu sebeple toplu mail gönderimi yaparken dikkat etmeniz gerekiyor, benim tavsiyem asla normal mail trafiği yaptığınız alan adı ile toplu mail gönderimi yapmayın & yaptırmayın..

Bonus : Siz ne kadar önlem alırsanız alın ne kadar spam göndermemeye çalışırsanız çalışın bir kullanıcınızın mail şifresini kaptırması halinde sizin bilginiz dışında spam mail gönderiyor da olabilirsiniz. Bu kapsamda Smart Host olarak out yönünü sağlama almak amacıyla Spam Gateway kullanmanız kesinlikle faydalı olacaktır. Bu konuda ileriki günlerde başka bir makale hazırlanacak.

Bonus 2 : https://mxtoolbox.com/NetworkTools.aspx sitesindeki toolları kullanabilirsiniz.

Mail trafiği gerçekten basit olarak gözükse de kapsamlı ve çok geniş bir konudur. Kendi politikalarınızı ve tavrınızı iyi belirlemeniz gerekmektedir. Ufak hatalar bile ciddi sonuçlar doğurabilir.  

Makaleyi Paylaş

6 Yorum

  1. Eline sağlık Ziya, çok güzel bir makale olmuş. Gerçekten referans bir makale olmayı hak ediyor.

  2. Elinize sağlık. Teşekkürler

  3. yazı kaydığından dolayı bir kısmı okunamamaktadır ellerinize şimdiden sağlık sayfa güncellemesi gelirse heyecanla okumayı beklemekteyim

  4. Eline sağlık hocam güzel bilgiler için.

  5. Makalede emeği geçenlere, sonsuz teşekkürler. Mail sistemleriyle uğraşan herkesin ihtiyacı olacağı bir makale olmuş.

  6. Elinize sağlık

Cevap bırakın