SMTP Nasıl Çalışır

E-postalar iletişim kurmanın etkili bir yoludur ve iletişim şeklini şekillendirmede hayati bir rol oynar. E-posta kişisel iletişimin yanı sıra kurumsal iletişim için de kullanılır. Kurumsal iletişimde, e-postaları iç iletişim veya müşterilerinizle dış iletişim, marka imajı oluşturma, potansiyel müşteri oluşturma vb. için ayırabilirsiniz. Fakat bu kadar büyük miktarda e-posta göndermek için Simple Mail Transfer Protocol Server veya SMTP sunucusuna ihtiyacınız vardır.

SMTP Nedir?

SMTP (Basit Posta Aktarım Protokolü), sunucular arasında e-posta gönderip alırken kullanılan bir TCP / IP protokolüdür. Bununla birlikte, mesajları alıcı tarafında sıraya koyma kabiliyeti ile sınırlı olduğu için kullanıcının mesajları kaydetmesine izin veren diğer iki protokolden biri olan POP3 (Posta Ofisi Protokolü) veya IMAP (İnternet Mesaj Erişim Protokolü) ile birlikte kullanılır. POP ve IMAP bir posta sunucusundan e-posta almanızı sağlayan protokoller iken, SMTP bir posta sunucusuna e-posta göndermenizi sağlayan protokoldür.

SMTP Nasıl Çalışır?   SMTP Nasıl Çalışır?

SMTP hizmeti; bir istemci, gönderen sunucu, alan sunucu sıralamasında üç aşamalı bir işlem modeli kullanarak çalışır. Yani ilk  olarak; Outlook veya Webmail ve buna benzer  bir e-posta istemcisinden bir gönderen e-posta sunucusuna mesaj göndermek için SMTP protokolü kullanılır. İkincisi aşamada gönderen e-posta sunucusu, e-postayı alıcı e-posta sunucusuna göndermek için geçiş hizmeti olarak SMTP’yi kullanır. Son olarak, alıcı sunucu, gelen postayı IMAP veya POP3 yoluyla indirmek için bir e-posta istemcisi (Outlook , Webmail vb) kullanır.

SMTP vs. IMAP vs. POP Arasında Ne Fark Var?

SMTP vs. IMAP vs. POP Arasında Ne Fark Var?

SMTP dünya genelinde kullanılan tek protokol değildir. Çoğu e-posta sunucusu ve sağlayıcısı, farklı kullanım türlerini ele almak için ek protokoller de uygular. En yaygın protokollerden ikisi Post Office Protocol (POP) ve Internet Message Access Protocol (IMAP).

Bu üç protokol arasındaki farklar aşağıdakileri içermektedir:

IMAP vs POP3

Bu protokoller arasındaki fark, POP3’ün postaları yerel olarak indirmesi, IMAP’in ise postaları sunucuda göstermesidir. IMAP e-postaları sunucuda saklar ve postalar arasında senkronizasyon vardır. Alternatif olarak, POP3 onları sunucudan siler, senkronizasyon veya e-posta yönetimi yoktur. Son fark, IMAP’in postanın birkaç kopyasını tutması ve POP3’ün bunu sunmamasıdır.

SMTP vs POP3

Bu iki protokol arasındaki temel fark, SMTP’nin bir push protokolü ve POP3’ün bir pop protokolü olmasıdır. POP3 postayı yerel olarak alır ve indirirken, SMTP postayı gönderenin cihazından alıcının gelen kutusuna gönderir. SMTP gönderici ve alıcı posta sunucusu arasındayken POP3 alıcı ve alıcının posta sunucusu arasındadır.

SMTP vs IMAP

Bu iki protokol arasındaki fark, SMTP’nin veri göndermek için, IMAP’in ise mesajları almak için kullanılmasıdır. SMTP sunucular arasında ve veri aktarımı için kullanılırken, IMAP istemci ve sunucu arasındadır.

SMTP Tarihçesi

İlk olarak 1960’lı yıllardan bu yana elektronik haberleşmede değişik yöntemler kullanılmaya başlansa da SMTP protokolü ilk olarak 1982 yılında POSTEL firması tarafından standart haline getirildi ve rfc788 kodu ile yayınlandı. Hemen sonrasında ise bu standardı temel alan Unix BSD bazlı ve dünyada en yaygın kullanılan SMTP sunucusu olan Sendmail rfc788 koduyla yayınlandı. Zaman içerisinde açık kaynak kodlu Linux işletim sistemleri sunucu hizmetlerinde çok popüler olduğu için SendMail (MTA) en popüler mail aktarım aracısı durumuna geldi. Bugün yüzlerce farklı Mail Server hizmeti yazılımı yayınlanmış durumda. En popüler olanları ise Exim, Postfix, Qmail, Mail Enable, Microsoft Exchange, Icewarp ve hMail gibi yazılımlardır.

SMTP Portu Kaçtır?

SMTP Portu Kaçtır?

SMTP protokolü, 25, 465 ve 587 olmak üzere 3 farklı port ve 2 farklı güvenlik katmanı (SSL veya TLS) kullanır. Genellikle istemci ve gönderen sunucu arasında SMTP Submission olarak isimlendirilen 587 numaralı port ve TLS güvenlik katmanı en yaygın kullanılandır. Mail gönderen ve alan sunucular arasında ise 25 nolu port standart olarak kullanılmaktadır. İki sunucu arasında mail iletimi güvenli katmak ile yapılacaksa SSL veya TLS 465 nolu portu kullanmaktadır.

İstemci ile gönderen sunucu arasında neden 587 kullanılıyor diye bir soru sorabilirsiniz. Yıllar önce Türkiye’deki servis sağlayıcılar spam ile mücadelede ADSL için kullanılan IP bloklarında 25 nolu portu kapatma kararı aldığı için istemci ile sunucu arasında 587  nolu port kullanılmaktadır. Bu uygulamadan sonra hızla Türkiye spam mail gönderen ülkeler içerisinde aniden sıralama kaybetmiş ve bu sorunu çözmüştür.

SMTP Sunucusu Nedir?

Simple Mail Transfer Protocol’ün kritik bir bileşeni olan ve e-postaların gönderilmesini ve alınmasını yönetmekle görevli özel bir sunucudur.

Bir e-posta oluşturup gönderdiğinizde, e-posta istemciniz iletim kontrol protokolünü ve mesaj aktarımını SMTP sunucusuna devreder, bu da e-posta mesajınızın dijital ortamda gezinerek hedefine ulaşmasını sağlar.

SMTP Sunucuları E-postaları Nasıl Gönderir?

Giden bir e-postanın giden posta sunucusu üzerinden bir SMTP sunucusuna yolculuğu birkaç önemli adımı içerir:

  • E-posta Trafiğini Yönlendirme: SMTP sunucusu, her e-posta için en iyi yolu belirleyen bir posta aktarım aracı görevi görür.
  • Etkili İletişim Sağlama: Alıcının SMTP sunucusu ve SMTP e-posta sunucu adresi ile iletişim kurarak alıcının e-postayı alabileceğini doğrular. Bu adım, bir paketi göndermeden önce önceden aramaya benzer.
  • Güvenliği Korumak: Modern SMTP sunucuları SMTP auth uzantısı ve SSL şifreleme gibi SMTP güvenlik önlemleri kullanır. Bunlar, e-postaların bütünlüğünü korumak ve güvenlik tehditlerinden arınmış olmalarını sağlamak için hayati önem taşır.
  • Teslimat Zorluklarının Üstesinden Gelmek: Alıcının posta sunucusu çalışmıyorsa, SMTP sunucusu e-postayı öylece terk etmez. Kendini adamış bir posta taşıyıcısı gibi davranır ve e-posta SMTP e-posta sunucusuna ulaşana kadar teslimatı yeniden dener.

SMTP Komutları

SMTP komutları, e-posta sunucuları arasındaki iletişimi kontrol etmek için kullanılan bir dizi talimattır. Bu komutlar, Simple Mail Transfer Protocol kapsamında kullanılır ve e-postaların gönderilmesini, alınmasını ve sunucular arasında yönlendirilmesini sağlar.

Bu komutlar; gönderen ve alıcıyı tanımlamak, mesaj içeriğini iletmek, oturumu sonlandırmak veya mevcut oturumu sıfırlamak için kullanılır.

KomutAçıklama
HELO / EHLOSMTP bir mesaj göndermek istediğinde, önce alıcı sunucuya bağlanır ve kendisini bir sunucu olarak tanıtarak bu komutu gönderir.

Gönderen bilgisayar HELO komutunu verir, alıcı bilgisayar da IP adresi veya alan adı bilgisiyle karşılık verir.

MAIL FROMMesajın kimden geldiğini belirtir ve bir e-posta gönderiminin başladığını sinyaller.

Kabul edilirse, alıcı bilgisayar OK kodu döner.

RCPT TOOK kodundan sonra, gönderen bilgisayar bu komutu vererek mesajın kime gideceğini belirtir.

Eğer birden fazla alıcı varsa bu komut birden çok kez kullanılabilir.

DATATüm alıcılar girildikten sonra mesajın içeriği bu komut ile alıcı sunucuya aktarılır.

Gönderici bilgisayar, içeriğin sonunda sadece bir nokta (.) içeren tek bir satır yazarak aktarımı sonlandırır.

Alıcı sunucu OK mesajı ile bunu onaylar ve ardından mesajı alıcılara yollar.

QUITGönderen bilgisayar, iletimi sonlandırmak için bu komutu kullanır.

SMTP Bileşenleri

E-posta iletişiminin belkemiği olan SMTP birkaç temel bileşenden oluşur:

  • SMTP Sunucusu: Bu sunucular SMTP mimarisinin güç merkezleridir ve e-posta gönderme ve alma gibi kritik görevleri yönetirler.
  • SMTP İstemcisi: Genellikle Apple Mail veya Outlook gibi e-posta istemciniz olan bu bileşen, e-postaları göndermek için SMTP sunucusuyla etkileşime girer.
  • SMTP E-posta Sunucusu Adresi: Her sunucunun benzersiz bir adresi vardır ve e-postaların doğru şekilde yönlendirilmesini sağlar.
  • Mail User Agent (MUA): E-posta etkinlikleri için kullanıcıya dönük arayüz olan MUA, etkili e-posta yönetimi için SMTP istemcisiyle birlikte çalışır.
  • Mail Submission Agent (MSA): MUA’lardan gelen e-posta mesajlarını kabul etmekten ve bunları teslim edilmek üzere MTA’ya göndermekten sorumlu bir yazılım programıdır. MSA’lar genellikle 587 numaralı bağlantı noktasını dinler ve STARTTLS şifrelemeli SMTP protokolünü kullanır.
  • Mail Transfer Agent (MTA): MTA, e-postanın alıcıya giderken farklı sunucular arasında iletilmesinden sorumludur.
  • Mail Delivery Agent (MDA): E-posta mesajlarını alıcının posta kutusuna teslim etmekten sorumlu bir yazılım programıdır.

WordPress SMTP Mail Ayarları Nasıl Yapılır?

Bu işlem için en pratik ve güvenilir yöntemlerden biri, WPForms tarafından geliştirilen WP Mail SMTP eklentisini kullanmaktır.

WordPress SMTP Mail Ayarları Nasıl Yapılır?

Eklentiyi Yükleme ve Etkinleştirme

İlk olarak, WP Mail SMTP eklentisini kurup etkinleştirin ve aşağıdaki adımları uygulayın:

  • WordPress yönetim paneline giriş yap.
  • Eklentiler > Yeni Ekle menüsüne git.
  • Arama kutusuna ”WP Mail SMTP” yazın, çıkan eklentiyi yükle ve Etkinleştir butonuna tıklayın.
  • ”Şimdi Kur” butonu ile kurulum başlar.

WP Mail SMTP’yi Yapılandırın

Eklentiyi etkinleştirdikten sonra sol menüde ”WP Mail SMTP” sekmesi görünür.

Bu sekmede 7 ana ayar sekmesi bulunur:

    • General Settings (Genel Ayarlar): Gönderen e-posta adresi ve isim bilgilerini girin.
    • Email Test (E-posta Testi): Kurulumun doğru yapılıp yapılmadığını test edin.
  • Alerts, Additional Connections, Smart Routing, Email Controls, Misc: Gelişmiş özellikler ve detaylı kontrol ayarları içerir.

”General Settings” sekmesini açın ve aşağıya kaydırarak desteklenen e-posta servislerini görün.

E-Posta Gönderici Servisini Seçin

WordPress varsayılan olarak PHP mail() fonksiyonunu kullanır, bu da çoğu zaman e-postaların ulaşmamasına neden olur. Bunun yerine daha güvenilir bir yöntem olan ”Other SMTP (Diğer SMTP)” seçeneğiyle devam etmeniz gerekir.

**SMTP bilgileri, kullandığın hosting sağlayıcısına göre değişebilir.

SMTP Ayarlarını Girin

SMTP bilgilerini aldıktan sonra ”Other SMTP” seçeneğindeki alanları aşağıdaki şekilde doldurun:

  • SMTP Host: Giden posta sunucu adresini girin.
  • Encryption: ”SSL”i seçin (Güvenli bağlantı için).
  • SMTP Port: Genellikle 465 kullanılır.
  • Auto TLS ve Authentication: Etkinleştirilmelidir.
  • SMTP Username ve Password: Mail hesabına ait kullanıcı adı ve şifreyi girin.

Tüm bilgileri girdikten sonra Ayarları Kaydet (Save Settings) butonuna tıklayarak yapılandırmayı tamamlayın.

Ayarları Test Edin

  • ”Email Test” sekmesine gidin.
  • Test alanına bir e-posta adresi yazın.
  • Send Email (E-posta Gönder) butonuna tıklayın.
  • E-posta başarılı bir şekilde ulaşırsa yapılandırmanız tamamlanmıştır.

Olası Sorunları Gözlemleyin

  • Bazı durumlarda e-postaların ulaşmamasına SPF veya DMARC kayıtlarının eksikliği neden olabilir.
  • Bu durumda, DNS kayıtlarını güncellemeniz gerekir.

Comments

      1. can

        hocam merhaba bana mail geliyor fakat ben gönderemiyorum port 25,587,465 hepsini denememe ragmen sanırım farklı bir hata var ama sorunu çözemedim telekom alt yapısı kullanıyorum nerde eksiklik olabilir not: sunucum kimlik dogrulamısı tikide işaretli hepsini yapmama ragmen bir türlü çözüm saglayamadım

        1. Osman Can Olgun

          Merhabalar, bu gibi hatalar genel de DNS kaynaklı olmaktadır. DNS ayarlarınızın doğru olduğuna emin olduktan sonra, kullanım yaptığınız outlook veya benzeri istemcide kurulum ayarlarını tekrar gözden geçirmenizi rica ederiz.

          Sağlıklı günler dileriz.

    1. Osman Can Olgun

      Merhabalar, tam olarak neyin yayınlama tarihini sormaktasınız? Buna göre yardımcı olabiliriz.

  1. Esra

    Merhaba Hocam,

    Öncelikle ellerinize sağlık. Çok faydalı bir yazı olmuş.
    Benim ek olarak bir sorum olacaktı. Outlook üzerinden e-posta hesabıma mail gelmiyor. Ben gönderebiliyorum. Ama bana gelen hiçbir maili göremiyorum.
    Biraz araştırdım çok fazla şey denedim fakat olmadı. Desteklerinizi bekliyorum.

    İyi Çalışmalar.

    1. Osman Can Olgun

      Merhabalar, SMTP bir e-posta alışveriş protokolüdür. Sormak istediğinizi tam olarak anlayamadım. Sorunuzu detaylandırmanız durumunda yardımcı olmak isteriz.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir