Bugün internet üzerinden yapılan tüm iletişim SMTP gibi protokoller sayesinde gerçekleşmektedir. Özel ağ yazılımları, kuralları ve rehberleri sayesinde bir bilgisayar herhangi bir yerdeki ağa bağlanarak oradan alışveriş yapma, haber okuma, e-posta gönderme ve daha birçok işlem mümkün olmaktadır. Ağ aktivitesi için protokoller vazgeçilmezdir ve kullanıcıların herhangi bir şekilde bu protokoller uğraşmasına gerek yoktur. Kısaca SMTP olarak bilinen Simple Mail Transfer Protocol de bu protokollerden bir tanesidir. TCP/IP protokolünün uygulama katmanının bir parçası olan SMTP “store and forward” adı verilen bir işlem gerçekleştirir ve e-posta göndermeyi mümkün kılmaktadır. Bu protokol e-postayı doğru bilgisayara ve gelen kutusuna gönderebilmek için Mail Transfer Agent’a ihtiyaç duyar.
SMTP Nasıl Çalışır?
SMTP, e-mail sunucuları arasında e-mail iletişimini basitleştiren kod serileri sunmaktadır. Mesaj bölümlere ve kategorilere ayrılır ve bu sayede sunucu tarafından anlaşılabilmektedir. Mail gönderildiğinde ilk olarak mail metin dizisine çevrilmektedir ve bu diziler her bir kısmı bir amaca hizmet etmektedir. SMTP bu kodları sağlar ve e-mail sunucusunun yazılımı bu dizileri anlayacak şekilde geliştirilmiştir. E-mail varacağı sunucuya kadar çeşitli sunuculara uğrar ve bu sunucuların her birinin kendi MTA aracıları bulunmaktadır. Buradan bir diğerine iletilir ve bu yüzden SMTP’ye “store and forward” işlemi adı verilmektedir. Son olarak ise gönderildiği sunucuya iletilir. SMTP sadece mail gönderiminde kullanılmaktadır. Gelen mailin kabul edilmesinde ise IMAP protokolü kullanılmaktadır. SMTP’nin adından da anlaşılabileceği gibi SMTP ile sadece metin gönderilmektedir. Font, görsel ve diğer mail ekleri işlenmemektedir. Bunun için Multipurpose Internet Mail Extensions kullanılmaktadır. MIME metin olmayan tüm içeriği düz metine çevirir ve SMTP bu şekilde maili göndermektedir.
SMTP Sunucu Modeli
SMTP sunucuları uçtan uca ve store and forward olmak üzere ikiye ayrılmaktadır. Uçtan uca iletişim yöntemi farklı organizasyonlar arasında iletişim gerçekleştirildiğinde kullanılır. Store and forward ise organizasyon içi iletişimlerde kullanılmaktadır. Mail göndermek isteyen SMTP istemcisi, gönderilecek olam SMTP iletişime geçmektedir ve sunucu mail gönderildiği sunucuya ulaşana kadar bir kopyasını saklamaktadır. İstemci oturumu başlatır ve SMTP sunucusu oturum isteğine cevap verir. Sunucu daha sonra mailin alıcısında yer alan SMTP sunucusuna oturum isteği gönderir ve alıcı sunucuda bu isteğe cevap verir. Her ne kadar bu işlemler uzun sürüyormuş gibi gelse de aslında mail gönderme işlemi günümüzde saniyeler sürmektedir ve tüm bu işlemler arkaplanda gerçekleşmektedir.
SMTP Portu Seçmek
SMTP portu seçmek bazen zorlu bir süreç olabilmektedir. SMTP için farklı portlar bulunmaktadır ve en iyisini seçerken dikkat edilmesi gereken bazı şeyler bulunmaktadır. 1982 yılının Ağustos ayında USC/Information Sciences Institute mail iletişimi için varsayılan iletim kanalının port 25 olmasını tavsiye etmiştir ve o zamandan beri varsayılan olarak bu port kullanılmaktadır. Ancak bunun yanı sıra port 465, port 587, port 2525 gibi portlar da sıkça kullanılmaktadır.
Port 25
Port 25 mail için kullanılan en eski porttur. Güney California Üniversitesi tarafından önerildikten sonra SMTP’nin varsayılan iletişim portu haline gelmiştir. Ancak son yıllarda internet servis sağlayıcılarının ve hosting sağlayıcılarının port 25 üzerindeki SMTP bağlantılarını kısıtlamaktadır. Bunun en büyük nedeni ise spam mail gönderiminin önüne geçmektir. Her servis sağlayıcı kullanıcılar için sağlık ya da günlük olmak üzere bir mail gönderim kısıtı koymaktadır. Bu nedenle port 25 yerine alternatif portlar mail için kullanılmaktadır.
Port 465
İnternet servis sağlayıcıları genellikle port 465 üzerinden bağlantıları kabul etmemektedir. Ayrıca port 465, İnternet Mühendisliği Görev Grubu tarafından hiç bir zaman SMTP için iletişim kanalı olarak resmen kabul edilmemiştir ancak IANA, port 465’i SMTP portu olarak kaydetmiştir. Bu port SMTP üzerinde şifreleme ve yetkilendirme için SMTPS olarak kullanılmaktadır ve e-mail gönderimini güvenli hale getirmek için Secure Sockets Layer (SSL) kullanmaktadır. SSK internet üzerinden iletişimlerin şifreli hale getirilmesi için sıkça tercih edilmektedir. 1998 yılının sonunda IANA bu port numarasını yeni bir servise atamıştır. Ancak birçok servis hala daha port 465 üzerinden SMTP arayüzüne izin vermektedir. Servis sağlayıcıları port 465’i açık tutmaktadır çünkü STARTTLS desteklemeyen eski Microsoft uygulamaları bu portu kullanmaktadır. Her ne kadar 465 tercih edilse de tavsiye edilmemektedir çünkü SMTP için standart olarak kabul edilmemektedir.
Port 587
1998 internet e-mail iletişimi için yeni bir port tara önerilmiştir. Bunun amacı ise geleneksel mesaj bildirimi ve iletimini ayırmaktadır. Bu nedenle port 587 kullanılmıştır. Yeni politika ve güvenlik gereklilikleri nedeniyle geleneksel mesaj iletim portu olan port 25 ile çakışmamaktadır. Port 587 popüler bir şekilde varsayılan SMTP portu olarak kullanılmaktadır. Neredeyse tüm mail sunucuları bu portu desteklemektedir. Her ne kadar port 587 desteklense de bazen mail bildirimleri için kapalı olabilmektedir. Bunun için hosting sağlayıcısından admin girişi ile kontrol edilmektedir. Bu port TLS şifrelemesine sahiptir ve İnternet Mühendisliği Görev Grubu tarafından belirlenmiş olan kurallara uymaktadır.
Port 2525
Hemen hemen bütün internet servis sağlayıcısı port 2525’in kullanımını desteklemektedir. Bu port IETF ya da IANA tarafından Resmi olarak bir SMTP portu olarak önerilmemektedir ancak port 587’nin alternatifi olarak kullanılmaktadır. Diğer tüm portlar engellendiğinde 2525 kullanılabilmektedir. Port 587 üzerinden bağlantı problemleri yaşandığında port 2525 bu problemlerin üstesinden gelebilmektedir. Alışılagelmişin dışında yüksek sayılı port olması nedeniyle internet servis sağlayıcıları ve cloud hosting sağlayıcıları tarafından desteklenmektedir. Ayrıca port 2525 TLS şifreleme desteğine de sahiptir.