Basit Posta Aktarım Protokolü (SMTP), e-posta mesajlarının sunucular arasında aktarımını kolaylaştırarak çalışır. Bir e-posta gönderildiğinde, gönderen taraftaki SMTP istemcisi, genellikle TCP kullanarak SMTP sunucusuyla bir bağlantı kurar. İstemci ve sunucu daha sonra e-postayı aktarmak için bir dizi komut ve yanıt aracılığıyla iletişim kurar. Süreç, müşterinin kendisini tanımlamasını, gönderen ve alıcı adreslerini belirtmesini ve mesaj içeriğini iletmesini içerir. Sunucu daha sonra e-postayı alıcının e-posta sunucusuna iletir veya alıcı alana kadar saklar.
SMTP protokolü bir dizi tanımlanmış aşamadan geçer: bağlantı kurma, posta işlemi ve bağlantının sonlandırılması. Başlangıçta istemci, genellikle 25 numaralı bağlantı noktasından sunucuyla bir TCP bağlantısı kurar. İstemci, sunucuya bir HELO veya EHLO komutu gönderir ve sunucu bir selamlamayla yanıt verir. İstemci daha sonra gönderenin e-posta adresini belirtmek için bir MAIL FROM komutu ve ardından alıcıyı/alıcıları belirtmek için RCPT TO komutlarını yayınlar. Sunucu bu komutları kabul ettikten sonra istemci, e-posta içeriğinin aktarımını başlatmak için bir DATA komutu gönderir. Mesaj yeni bir satırda tek bir nokta ile bitecek şekilde gönderilir. Sunucu mesajın alındığını onaylar ve istemci bağlantıyı kapatmak için bir QUIT komutu gönderir.
SMTP, posta sunucuları arasındaki iletişim için genellikle 25 numaralı bağlantı noktasını kullanır. SSL/TLS kullanılarak şifrelenmiş iletim için sıklıkla 465 numaralı bağlantı noktası kullanılır. STARTTLS şifrelemeli SMTP için diğer bir yaygın bağlantı noktası, güvenli iletim sağlamak amacıyla istemciden sunucuya e-posta gönderimi için önerilen bağlantı noktası 587’dir.
Basit Posta Aktarım Protokolü, e-posta aktarım işlemi sırasında kullanılan çeşitli komutları içerir. Anahtar komutlar arasında istemciyi sunucuya tanımlamak için HELO veya EHLO, gönderenin adresini belirtmek için MAIL FROM, alıcının adresini belirtmek için RCPT TO, e-posta içeriğinin aktarımını başlatmak için DATA, mevcut posta işlemini sıfırlamak için RSET, geçerli posta işlemini sıfırlamak için VRFY bulunur. bir e-posta adresini doğrulayın, bir posta listesini genişletmek için EXPN’ye basın ve oturumu sonlandırmak için QUIT’e basın. Her komutun ardından işlemin başarısını veya başarısızlığını belirten bir sunucu yanıtı gelir.