Ana içeriğe geç

NİHAİ KILAVUZ: Sunucunuzu Güvenilir E-posta Gönderimi İçin Ayarlama. BÖLÜM 2: Giden e-postaların spam'e düşmesini nasıl önlersiniz

· 6 dakikalık okuma
Customer Care Engineer

dns-kayitlari-yapilandirma-spf-dkim-dmarc-ptr-mx-eposta-spam-kutsavuz-engelleme

bilgi

DNS kayıtları, bir alan adına ait farklı trafik türlerinin (web, posta, FTP vb.) nereye yönlendirileceğini belirleyen bir dizi teknik parametredir.

Alan adını IP adreslerine ve diğer sunuculara bağlayarak tarayıcıların ve posta sistemlerinin web siteniz veya e-postanızla çalışırken nereye bağlanacağını bilmesini sağlarlar.

Bu kılavuzun 1. Bölümünde, güvenlik duvarını yapılandırdık ve posta gönderimi için gerekli portları açtık. Şimdi mesajların sunucunuzdan gönderildiğinden emin olduğumuza göre, DNS kayıtlarının doğru yapılandırıldığını kontrol etmemiz gerekiyor. Gmail, Outlook ve diğer büyük posta hizmetleri, mesajları ana gelen kutusuna teslim etmeden önce MX, SPF, DKIM, DMARC ve PTR'yi sıkı bir şekilde doğrular. Doğru kayıtlar, mesajların Spam klasörüne düşme (veya tamamen reddedilme) şansını keskin bir şekilde artırır.

Sonraki adımlarda, her tür için mevcut DNS kayıtlarını nasıl kontrol edeceğimizi ve bunları doğru şekilde yapılandırmak için önerilerde bulunacağımızı açıklayacağız.

warning

Bu makalenin bu bölümünde, tüm kontroller için örnek olarak example.com alan adını, 1.2.3.4 IP adresini ve 2001:db8:1:11::1 IPv6 Adresini kullanacağız. Lütfen bunları web sitenizin gerçek adıyla ve geçerli IP adreslerinizle değiştirin.

Ön Koşullar

Adım 1. DNS sağlayıcısını kontrol etme

Bu makalenin bağlamında, DNS kayıtlarını birden çok kez düzenlememiz gerekecek. Bunun, alan adınız için geçerli olan DNS sağlayıcınızın kontrol panelinde yapılması gerekir. Bunu doğru bir şekilde yapmak için, şu anda bu hizmetleri kimin sağladığını tam olarak bilmeniz gerekir. Aksi takdirde, yaptığınız değişiklikler hiçbir etki yaratmayacaktır.

Çoğu zaman DNS sağlayıcısı rolü şunlar tarafından üstlenilir:

  • hosting sağlayıcınız,

  • alan adı kaydediciniz veya

  • DDoS koruma sağlayıcınız.

Ancak bu her zaman böyle değildir.

whois komutunu kullanarak alan adınızın DNS sağlayıcısının şu anda kim olduğunu tam olarak öğrenebilirsiniz. Örneğin, kodu.cloud alan adını kontrol edelim:

whois kodu.cloud | grep -i "Name Server" | awk '{print $3}'

Çıktı NS sunucularını listeleyecektir:

art.ns.cloudflare.com
isla.ns.cloudflare.com

Bu, bu durumda DNS kayıtlarının Cloudflare kontrol panelinde düzenlenmesi gerektiği anlamına gelir.

Birçok durumda, alan adından DNS sağlayıcısının kim olduğunu çıkarabilirsiniz. Ancak bu her zaman böyle değildir. Örneğin, tüm müşterilerimiz için mevcut olan ücretsiz DNS hizmetimiz için adlar şu şekildedir:

birman.nameserver.red.
rex.nameserver.red.
korat.nameserver.blue.
toybob.nameserver.blue.

 Bu durumda, daha fazla açıklama için lütfen hosting sağlayıcınızın teknik desteğiyle iletişime geçin.

DNS sağlayıcınızı kesin olarak belirledikten sonra, kontrol paneline giriş yapın ve alan adınız için DNS kayıtlarını düzenleme bölümüne gidin. Aşağıda açıklanan değişikliklerin çoğu orada yapılacaktır. Tüm arayüzler farklı olduğundan, evrensel bir adım adım kılavuz sağlamak imkansızdır.

Bu aşamada sorun yaşarsanız, teknik desteğe danışın.

warning

DNS kayıtlarını değiştirdikten sonra, önbellek yayılımı 20 dakika ile 24 saat arasında sürebilir. Büyük posta hizmetlerinin itibarınızı güncellemesi için gereken süreyi göz önünde bulundurarak, kararlı posta teslimi için yaklaşık 48 saat beklemek önerilir, ancak daha sık olarak durum 2-3 saat sonra normale döner.

Adım 2. IPv6 kontrolü

Doğru yapılandırma için, sunucunun bir IPv6 adresine sahip olup olmadığını tam olarak bilmemiz gerekiyor. Öğrenmek için komutu çalıştırın:

ip a | grep inet6

Çıktı yaklaşık olarak aşağıdaki gibiyse:

inet6 ::1/128 scope host noprefixroute
inet6 2001:db8:1:11::1/120 scope global
inet6 fe80::1/64 scope link

o zaman sunucunuzda bir IPv6 adresi var demektir. Bu, / işaretine kadar olan ve scope global ile biten satırda gösterilecektir.

Sunucunuzun IPv6 adresini daha sonra kullanabilmeniz için not alın.

Eğer çıktı boşsa veya yalnızca şu biçimde tek bir satır içeriyorsa:

inet6 fe80::1c2:3dff:fe4a:5b6c/64 scope link

o zaman sunucunuzda IPv6 yok demektir. Sonraki tüm adımlarda, lütfen IPv6 kullanmayın.

DNS kayıt yapılandırması

Adım 3. MX kaydını kontrol etme

MX kaydı, alan adı için gelen postanın nereye teslim edilmesi gerektiğini belirtir. Bunu aşağıdaki komutla kontrol edebilirsiniz:

dig MX example.com +short

Doğru çıktının örneği:

10 mail.example.com.

Eğer çıktı yanlış bir değer gösteriyorsa, DNS sağlayıcınızın kontrol panelinde DNS kaydını düzenleyin:

  • Tür: MX
  • Ad: @
  • Adres: mail.example.com
  • Öncelik: 10

Kayıt eksikse, boş bir çıktı alırsınız:

~ dig MX badexample.com +short
~

Bu durumda, yukarıdaki örneği izleyerek bir DNS kaydı oluşturun.

Ayrıca birden fazla MX kaydı olabileceğini unutmayın. Bu durumda, posta önce daha küçük sayısal öncelik değerine sahip sunucuya gönderilecektir (örneğin, 10, 20'den daha yüksek önceliğe sahiptir).

Birincil sunucu kullanılamıyorsa, teslimat öncelik sırasına göre sonraki sunucuya yapılır.

Adım 4. A ve AAAA kayıtlarını kontrol etme

Ardından, mail.example.com ve example.com adreslerinin mesajların gönderildiği sunucuyu gösterdiğinden emin olun:

dig A example.com +short
dig A mail.example.com +short
dig AAAA example.com +short
dig AAAA mail.example.com +short

Bu komutların çıktısındaki IP adresleri, sunucunuzun gerçek IPv4 ve IPv6 adresleriyle eşleşmelidir. Farklıysa veya bu tür kayıtlar eksikse, DNS sağlayıcınızın kontrol panelinde bunları düzenleyin veya oluşturun:

  1. example.com (A):
  • Tür: A
  • Ad: @
  • Adres: 1.2.3.4
  1. example.com (AAAA):
  • Tür: AAAA
  • Ad: @
  • Adres: 2001:db8:1:11::1
  1. mail.example.com (A):
  • Tür: A
  • Ad: mail
  • Adres: 1.2.3.4
  1. mail.example.com (AAAA):
  • Tür: AAAA
  • Ad: mail
  • Adres: 2001:db8:1:11::1

Adım 5. SPF kaydını kontrol etme

SPF, alan adı adına posta göndermeye izin verilen sunucuları tanımlar.

Kaydı kontrol etme:

dig TXT example.com +short

Doğru bir SPF kaydının örneği:

example.com. TXT "v=spf1 ip4:1.2.3.4 ip6:2001:db8:1:11::1 a mx ~all"

Alan adının yalnızca bir SPF kaydı olması son derece önemlidir. Birden fazla kayıt doğrulama hatasına neden olabilir.

IP adresi geçerli sunucu adresinizden farklıysa veya bu tür bir kayıt eksikse, DNS sağlayıcınızın kontrol panelinde bunu düzenleyin veya oluşturun:

IPv6 mevcutsa:

  • Tür: TXT
  • Ad: @
  • Değer: v=spf1 ip4:1.2.3.4 ip6:2001:db8:1:11::1 a mx ~all

IPv6 yoksa:

  • Tür: TXT
  • Ad: @
  • Değer: v=spf1 ip4:1.2.3.4 a mx ~all

SPF kaydının birçok ek seçeneği vardır, ancak bu set doğru mesaj gönderme işlemi için yeterlidir.

Adım 6. DKIM kaydını kontrol etme

DKIM, mesajın belirtilen alandan gönderildiğini ve tahrif edilmediğini onaylayan dijital bir imzadır. İmzayı doğrulamak için ortak anahtarla bir TXT DNS kaydı kullanılır: önce sunucuda imza oluşturulur, ardından anahtar DNS'de yayınlanır.

Posta alan adınız için bir DKIM imzası elde etmenin çeşitli yolları vardır, ancak bu makalenin kapsamı dahilinde en basit seçeneği, FASTPANEL kullanarak ele alacağız. FASTPANEL'de, posta alan adları için varsayılan olarak bir DKIM imzası oluşturulur.

ipucu

FASTPANEL, posta sunucusuyla çalışmak için son derece uygundur: manuel olarak herhangi bir şey yapılandırmanıza veya yüklemenize gerek yoktur. Kutudan çıktığı gibi, gelen ve giden posta ile tam teşekküllü çalışma için yapılandırılmış bir posta sunucusu ve ayrıca kullanışlı bir webmail istemcisi elde edersiniz.

Bu nedenle, tek yapmanız gereken ortak anahtar değerini kopyalamak ve ilgili DNS kaydına eklemektir. Bunu yapmak için, panelde "Yönetim" → "Posta" bölümüne gidin ve posta alan adınızın adının bulunduğu satırın sonundaki "DKIM" düğmesine tıklayın:

dns-kayitlari-yapilandirma-spf-dkim-dmarc-ptr-mx-eposta-spam-kutsavuz-engelleme

Ardından ortak anahtarı kopyalayın:

dns-kayitlari-yapilandirma-spf-dkim-dmarc-ptr-mx-eposta-spam-kutsavuz-engelleme

DNS sağlayıcınızın tarafında aşağıdaki DNS kaydını oluşturun:

  • Tür: TXT
  • Ad: dkim._domainkey
  • Değer: daha önce kopyaladığınız anahtar

Böyle bir kayıt zaten varsa, güncel olduğundan emin olmak için anahtar değerini değiştirmek daha iyidir.

Birden fazla DKIM kaydı olabilir, ancak bu durumda farklı adlara sahip olmaları gerekir. Örneğin, aynı anda dkim._domainkey ve mail._domainkey adlarında kayıtlara sahip olmak herhangi bir sorun yaratmayacaktır.

Yapılandırma ve DNS önbellek güncellemesinden sonra, komutu kullanarak DKIM kaydının varlığını kontrol edebilirsiniz:

dig TXT dkim._domainkey.example.com +short

Adım 7. DMARC kaydını kontrol etme

DMARC, SPF veya DKIM'de başarısız olan mesajların nasıl işleneceğine dair kuralları belirler.

Kaydı kontrol etme:

dig TXT _dmarc.example.com +short

Örnek çıktı:

"v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s"

DMARC kaydının birçok ek seçeneği vardır, ancak yaygın senaryolar için aşağıdaki biçimde bir kayıt eklemek yeterlidir:

  • Tür: TXT
  • Ad: _dmarc
  • Değer: v=DMARC1; p=reject

Adım 8. Sendmail_path değişkenini kontrol etme (isteğe bağlı)

Bu adım, web sitenizden doğrudan mesaj gönderiyorsanız (örneğin, iletişim formları kullanarak veya sipariş verirken) çok faydalı olacaktır. Bu tür mesajlar için gerekli tüm DNS kayıtlarının dikkate alındığından emin olmak için, sitenizin PHP ayarlarındaki sendmail_path değişkeni için aşağıdaki değeri ayarlayın:

/usr/sbin/sendmail -t -i -f "[email protected]"

Örneğin, FASTPANEL'de bunu sitenin kartında "PHP Ayarları" bölümünde yapabilirsiniz.

Ana Bilgisayar Adı ve PTR yapılandırması

PTR (veya rDNS), bir IP adresini bir alan adına bağlayan ters bir DNS kaydıdır.

Sunucu Ana Bilgisayar Adı, sunucunun ağda tanımlanabileceği addır.

PTR, sunucu ana bilgisayar adıyla eşleşmiyorsa, mesajlar neredeyse kesinlikle spam'e düşecektir.

En iyi uygulama, her iki değer olarak da mail.example.com olarak ayarlamaktır (bu değerin her zaman alan adınızın gerçek adıyla değiştirilmesi gerektiğini unutmayın).

Adım 9. Ana Bilgisayar Adı

Sunucunuzun mevcut ana bilgisayar adını öğrenmek için komutu çalıştırın:

hostname

Bunu değiştirmek için şunları çalıştırın:

sudo hostnamectl set-hostname mail.example.com

Ardından her şeyin doğru olduğundan emin olmak için hostname komutunu tekrar çalıştırın.

Adım 10. PTR

PTR kaydı ile durum biraz farklıdır: yalnızca IP adresinin sahibi tarafından değiştirilebilir, yani hosting sağlayıcınız. Bunun nedenleri hakkında bu makaleden daha fazla bilgi edinebilirsiniz.

Bazı hosting sağlayıcıları, PTR kaydını kişisel hesabınızda düzenlemenize izin verir. Bunu orada kendiniz yapmayı deneyebilirsiniz. Bu işe yaramazsa, teknik destekle iletişime geçin ve onlardan PTR kaydı olarak aşağıdaki değeri ayarlamalarını isteyin:

mail.example.com

Bu değerin her zaman alan adınızın gerçek adıyla değiştirilmesi gerektiğini unutmayın.

Değişiklikler genellikle hemen uygulanır; bu durumda DNS önbellek güncellemeleri için beklemenize gerek yoktur. Mevcut PTR kaydını aşağıdaki komutla kontrol edebilirsiniz:

dig -x 1.2.3.4 +short

Son kontrol

Bu bölüme ulaştıysanız, tebrikler - son düzlüğe geldiniz. Şimdi tek yapmanız gereken her şeyin doğru yapılandırıldığını ve sunucunuzdan gönderilen mesajların her alıcı için Neredeyse Garanti olarak Gelen Kutusuna düşeceğini doğrulamak. Bunu yapmadan önce, DNS önbellek güncellemelerini beklediğinizden emin olun. DNS kayıtlarında yapılan son değişikliklerden sonra en az 1-2 saat beklemek en iyisidir.

Bu tür kontroller için birçok üçüncü taraf hizmeti mevcuttur. Herhangi birini kullanabilirsiniz. Bu makalede, mail-tester.com hizmetini kullanacağız.

Kontrolü gerçekleştirmek için bu web sitesine gidin ve test posta kutusunun adını kopyalayın:

dns-kayitlari-yapilandirma-spf-dkim-dmarc-ptr-mx-eposta-spam-kutsavuz-engelleme

Bu adrese alan adınızdaki herhangi bir posta kutusundan bir mesaj gönderin ve "Sonra puanınızı kontrol edin" düğmesine tıklayın. Konu belirtmeyi ve mesajın gövdesine bir şeyler yazmayı unutmayın.

Bundan sonra, hizmet DKIM, SPF, DMARC, PTR kaydının varlığı ve mesaj için genel bir "itibar" puanı kontrolünün sonuçlarını ve ayrıca sunucunuzun SPAM kara listelerinde listelenip listelenmediğini gösterecektir.

Bu makaledeki tüm adımları dikkatlice ve tutarlı bir şekilde izlediyseniz, sonuç 10/10 olacaktır. Daha düşükse, lütfen mail-tester'ın önerilerini inceleyin. Sorunun ne olduğunu ve nasıl düzeltileceğini ayrıntılı olarak açıklayacaklardır.

Ayrıca, sunucunuzun SPAM kara listelerinde listelenip listelenmediğini başka bir mükemmel hizmet kullanarak kontrol edebilirsiniz:

 https://mxtoolbox.com/blacklists.aspx

Kontrollerden herhangi biri sunucunuzun IP adresinin listelerden birine düştüğünü gösteriyorsa, sorunu çözmelerine yardımcı olabilmeleri için hosting sağlayıcınızla iletişime geçin.

Yapılandırma bu kadar. Kendi araştırmalarınıza zaman ayırmak istemiyorsanız veya herhangi bir sorunla karşılaştıysanız, her zaman kodu.cloud teknik desteği ile iletişime geçebilirsiniz. Burada açıklanan tüm adımları müşterilerimiz için herhangi bir zamanda ücretsiz olarak mümkün olan en kısa sürede gerçekleştireceğiz.