{"id":622,"date":"2026-09-11T13:22:39","date_gmt":"2026-09-11T13:22:39","guid":{"rendered":"https:\/\/www.vps.tc\/blog\/?p=622"},"modified":"2026-09-12T13:00:38","modified_gmt":"2026-09-12T13:00:38","slug":"smtp-nedir-nasil-calisir-portlari","status":"publish","type":"post","link":"https:\/\/www.vps.tc\/blog\/tr\/smtp-nedir-nasil-calisir-portlari\/","title":{"rendered":"SMTP Nedir? Nas\u0131l \u00c7al\u0131\u015f\u0131r, Hangi Portlar\u0131 Kullan\u0131r?"},"content":{"rendered":"<div class=\"aiw-toc\" style=\"border:1px solid #dbe3ea;border-radius:8px;padding:16px 20px;margin:0 0 28px\"><strong>\u0130\u00e7indekiler<\/strong><\/p>\n<ol style=\"margin:10px 0 0;padding-left:22px\">\n<li><a href=\"#smtp-nedir-ne-ise-yarar\">SMTP nedir, ne i\u015fe yarar?<\/a><\/li>\n<li><a href=\"#smtp-oturumu-nasil-ilerler\">SMTP oturumu nas\u0131l ilerler?<\/a><\/li>\n<li><a href=\"#smtp-hangi-portlari-kullanir\">SMTP hangi portlar\u0131 kullan\u0131r?<\/a><\/li>\n<li><a href=\"#smtp-baglantisi-nasil-test-edilir\">SMTP ba\u011flant\u0131s\u0131 nas\u0131l test edilir?<\/a><\/li>\n<li><a href=\"#smtp-kimlik-dogrulamasi-ve-tls\">SMTP kimlik do\u011frulamas\u0131 ve TLS<\/a><\/li>\n<li><a href=\"#smtp-imap-ve-pop3-ayni-isi-mi-yapar\">SMTP, IMAP ve POP3 ayn\u0131 i\u015fi mi yapar?<\/a><\/li>\n<li><a href=\"#smtp-gonderimi-calismiyorsa-nereden-baslanir\">SMTP g\u00f6nderimi \u00e7al\u0131\u015fm\u0131yorsa nereden ba\u015flan\u0131r?<\/a><\/li>\n<li><a href=\"#smtp-sunucusu-kurarken-kritik-ayarlar\">SMTP sunucusu kurarken kritik ayarlar<\/a><\/li>\n<li><a href=\"#sik-sorulan-sorular\">S\u0131k Sorulan Sorular<\/a><\/li>\n<li><a href=\"#kaynaklar\">Kaynaklar<\/a><\/li>\n<\/ol>\n<\/div>\n<h2 id=\"smtp-nedir-ne-ise-yarar\">SMTP nedir, ne i\u015fe yarar?<\/h2>\n<p>Bir e-posta g\u00f6nderdi\u011finizde mesaj al\u0131c\u0131n\u0131n bilgisayar\u0131na do\u011frudan gitmez. \u00d6nce kulland\u0131\u011f\u0131n\u0131z uygulama bir SMTP submission sunucusuna ba\u011flan\u0131r. Bu sunucu g\u00f6ndereni, al\u0131c\u0131y\u0131 ve mesaj verisini kabul eder; ard\u0131ndan al\u0131c\u0131 alan ad\u0131n\u0131n MX kayd\u0131n\u0131 bulup hedef posta sunucusuyla yeni bir SMTP oturumu a\u00e7ar.<\/p>\n<p>SMTP, yani Simple Mail Transfer Protocol, e-postalar\u0131n bir istemciden posta sunucusuna ve bir posta sunucusundan ba\u015fka bir posta sunucusuna aktar\u0131lmas\u0131n\u0131 sa\u011flayan uygulama katman\u0131 protokol\u00fcd\u00fcr. Mesaj\u0131n teslim edilip edilmedi\u011fini SMTP sunucular\u0131 aras\u0131ndaki konu\u015fma belirler. Gelen kutusunu okumak i\u00e7in ise genellikle IMAP veya POP3 kullan\u0131l\u0131r.<\/p>\n<p>VPS y\u00f6netenler a\u00e7\u0131s\u0131ndan ayr\u0131m \u00f6nemli. Web uygulaman\u0131z \u00e7al\u0131\u015f\u0131yor olabilir; fakat uygulama yanl\u0131\u015f porta, yanl\u0131\u015f TLS moduna veya kimlik do\u011frulamas\u0131 gerektiren bir sunucuya hatal\u0131 ayarlarla ba\u011flan\u0131yorsa g\u00f6nderim ba\u015far\u0131s\u0131z olur. Sadece &#8220;SMTP bilgilerini girdim&#8221; demek ba\u011flant\u0131n\u0131n do\u011fru kuruldu\u011funu g\u00f6stermiyor.<\/p>\n<h2 id=\"smtp-oturumu-nasil-ilerler\">SMTP oturumu nas\u0131l ilerler?<\/h2>\n<p>SMTP metin tabanl\u0131 bir istemci-sunucu ileti\u015fimi kurar. \u0130stemci komut g\u00f6nderir, sunucu \u00fc\u00e7 haneli bir yan\u0131t kodu d\u00f6nd\u00fcr\u00fcr. RFC 5321&#8217;deki temel ak\u0131\u015fta ba\u011flant\u0131 kurulur, istemci kendisini tan\u0131t\u0131r, g\u00f6nderen ve al\u0131c\u0131 bildirilir, ard\u0131ndan mesaj verisi aktar\u0131l\u0131r.<\/p>\n<h3>DNS ile hedef sunucuyu bulma<\/h3>\n<p>G\u00f6nderen sunucu, al\u0131c\u0131n\u0131n alan ad\u0131 i\u00e7in MX kayd\u0131n\u0131 sorgular. \u00d6rne\u011fin <code>ornek.com<\/code> adresine mesaj g\u00f6nderen bir sunucu, bu alan ad\u0131n\u0131n hangi posta sunucusunu kulland\u0131\u011f\u0131n\u0131 DNS \u00fczerinden \u00f6\u011frenir. MX kayd\u0131 bulunamazsa baz\u0131 sunucular A veya AAAA kayd\u0131na ba\u015fvurabilir; bu davran\u0131\u015f d\u00fczg\u00fcn bir posta yap\u0131land\u0131rmas\u0131n\u0131n yerine ge\u00e7mez.<\/p>\n<p>MX kayd\u0131n\u0131 terminalden g\u00f6rmek i\u00e7in <code>dig<\/code> kullan\u0131r\u0131m:<\/p>\n<pre><code>dig +short MX ornek.com<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131daki say\u0131 MX \u00f6nceli\u011fidir. Daha d\u00fc\u015f\u00fck say\u0131 daha y\u00fcksek \u00f6ncelik anlam\u0131na gelir. Birden fazla kay\u0131t varsa g\u00f6nderen sunucu genellikle \u00f6nceli\u011fi en y\u00fcksek hedefi dener; ba\u011flant\u0131 kurulamazsa di\u011fer kay\u0131tlar\u0131 de\u011ferlendirebilir.<\/p>\n<p>DNS taraf\u0131ndaki bir hata yaln\u0131zca SMTP&#8217;yi etkilemez. Alan ad\u0131n\u0131n di\u011fer servisleri de ayn\u0131 kay\u0131t zincirine ba\u011fl\u0131d\u0131r. Bu nedenle DNS sorunlar\u0131nda panel ekran\u0131na g\u00fcvenmeden <code>dig<\/code> ile sorgu yapar\u0131m. Taray\u0131c\u0131da benzer bir hata g\u00f6r\u00fcyorsan\u0131z <a href=\"https:\/\/www.vps.tc\/blog\/tr\/dns-probe-finished-nxdomain-hatasi-nasil-cozulur\/\">DNS_PROBE_FINISHED_NXDOMAIN Hatas\u0131 Nas\u0131l \u00c7\u00f6z\u00fcl\u00fcr?<\/a> ba\u015fl\u0131kl\u0131 yaz\u0131daki kontrol ad\u0131mlar\u0131 i\u015finize yarayabilir.<\/p>\n<h3>TCP ba\u011flant\u0131s\u0131 ve SMTP komutlar\u0131<\/h3>\n<p>\u0130stemci, hedef sunucunun ilgili portuna TCP ba\u011flant\u0131s\u0131 a\u00e7ar. Sunucu ba\u011flant\u0131y\u0131 kabul ederse \u00e7o\u011funlukla <code>220<\/code> koduyla ba\u015flayan bir kar\u015f\u0131lama mesaj\u0131 verir.<\/p>\n<p>Temel komutlar k\u0131saca \u015funlard\u0131r:<\/p>\n<ul>\n<li><code>EHLO<\/code> veya eski istemcilerde <code>HELO<\/code>: \u0130stemcinin kendisini tan\u0131tmas\u0131.<\/li>\n<li><code>MAIL FROM<\/code>: Zarf g\u00f6ndereninin bildirilmesi.<\/li>\n<li><code>RCPT TO<\/code>: Zarf al\u0131c\u0131s\u0131n\u0131n bildirilmesi.<\/li>\n<li><code>DATA<\/code>: Konu, ba\u015fl\u0131klar ve mesaj g\u00f6vdesinin aktar\u0131lmas\u0131.<\/li>\n<li><code>QUIT<\/code>: Oturumun d\u00fczg\u00fcn bi\u00e7imde kapat\u0131lmas\u0131.<\/li>\n<\/ul>\n<p>Buradaki zarf g\u00f6ndereni ile mesaj\u0131n g\u00f6r\u00fcnen <code>From:<\/code> ba\u015fl\u0131\u011f\u0131 ayn\u0131 \u015fey de\u011fildir. SMTP oturumunda verilen <code>MAIL FROM<\/code> de\u011feri teslimat ve geri d\u00f6n\u00fc\u015f i\u015flemlerinde kullan\u0131l\u0131r. Mesaj ba\u015fl\u0131\u011f\u0131ndaki <code>From:<\/code> ise al\u0131c\u0131n\u0131n e-posta istemcisinde g\u00f6rd\u00fc\u011f\u00fc aland\u0131r. Bu ayr\u0131m\u0131 atlamak, sahte g\u00f6nderen adresleri ve teslimat sorunlar\u0131 incelenirken te\u015fhisi zorla\u015ft\u0131r\u0131r.<\/p>\n<h3>Mesaj verisinin aktar\u0131lmas\u0131<\/h3>\n<p>Oturum kabaca \u015fu s\u0131rada ilerler:<\/p>\n<pre><code>S: 220 mail.hedef.example ESMTP Postfix\nC: EHLO gonderen.example\nS: 250-mail.hedef.example\nS: 250-PIPELINING\nS: 250-STARTTLS\nS: 250 AUTH PLAIN LOGIN\nC: MAIL FROM:&lt;sender@gonderen.example&gt;\nS: 250 2.1.0 Ok\nC: RCPT TO:&lt;alici@hedef.example&gt;\nS: 250 2.1.5 Ok\nC: DATA\nS: 354 End data with &lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;\nC: Subject: Deneme\nC:\nC: Merhaba\nC: .\nS: 250 2.0.0 Ok: queued\nC: QUIT\nS: 221 2.0.0 Bye<\/code><\/pre>\n<p><code>DATA<\/code> sonras\u0131nda tek ba\u015f\u0131na gelen nokta veri b\u00f6l\u00fcm\u00fcn\u00fcn bitti\u011fini belirtir. Sunucunun <code>250 queued<\/code> yan\u0131t\u0131 mesaj\u0131 kabul etti\u011fini g\u00f6sterir; mesaj\u0131n al\u0131c\u0131n\u0131n gelen kutusuna kesinlikle ula\u015ft\u0131\u011f\u0131n\u0131 de\u011fil. Hedef sunucu daha sonra spam filtresi uygulayabilir, teslimat\u0131 erteleyebilir veya mesaj\u0131 reddedebilir.<\/p>\n<h2 id=\"smtp-hangi-portlari-kullanir\">SMTP hangi portlar\u0131 kullan\u0131r?<\/h2>\n<p>Port se\u00e7imi SMTP yap\u0131land\u0131rmalar\u0131nda s\u0131k kar\u015f\u0131la\u015ft\u0131\u011f\u0131m hatalardan biri. IANA kay\u0131tlar\u0131nda SMTP i\u00e7in 25, message submission i\u00e7in 587 ve TLS ile g\u00fcvenli SMTP ba\u011flant\u0131s\u0131 i\u00e7in 465 bulunur. RFC 6409, kullan\u0131c\u0131lar\u0131n mesaj teslim etmek \u00fczere ba\u011fland\u0131\u011f\u0131 submission hizmetini sunucular aras\u0131 SMTP aktar\u0131m\u0131ndan ay\u0131r\u0131r.<\/p>\n<table>\n<thead>\n<tr>\n<th>Port<\/th>\n<th>Yayg\u0131n kullan\u0131m<\/th>\n<th>TLS bi\u00e7imi<\/th>\n<th>Kimlik do\u011frulama<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>25<\/td>\n<td>Posta sunucular\u0131 aras\u0131 aktar\u0131m<\/td>\n<td>Ba\u015flang\u0131\u00e7ta d\u00fcz ba\u011flant\u0131, gerekirse STARTTLS<\/td>\n<td>Sunucu politikas\u0131na ba\u011fl\u0131; istemci g\u00f6nderimi i\u00e7in genellikle uygun de\u011fil<\/td>\n<\/tr>\n<tr>\n<td>587<\/td>\n<td>\u0130stemci veya uygulaman\u0131n mesaj g\u00f6ndermesi<\/td>\n<td>\u00c7o\u011funlukla STARTTLS<\/td>\n<td>Genellikle zorunlu<\/td>\n<\/tr>\n<tr>\n<td>465<\/td>\n<td>\u0130stemci veya uygulaman\u0131n TLS ile SMTP ba\u011flant\u0131s\u0131<\/td>\n<td>Ba\u011flant\u0131n\u0131n ba\u015f\u0131ndan itibaren TLS<\/td>\n<td>Genellikle zorunlu<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Port 25 ne zaman kullan\u0131l\u0131r?<\/h3>\n<p>Port 25, SMTP sunucular\u0131n\u0131n birbirine mesaj teslim etti\u011fi geleneksel porttur. G\u00f6nderen alan ad\u0131n\u0131n MX sunucusu, al\u0131c\u0131n\u0131n MX sunucusuna port 25 \u00fczerinden ba\u011flanabilir. Bu trafik sunucular aras\u0131 oldu\u011fu i\u00e7in bir\u00e7ok VPS sa\u011flay\u0131c\u0131s\u0131 yeni sunucularda port 25 \u00e7\u0131k\u0131\u015f\u0131n\u0131 s\u0131n\u0131rlayabilir. Ama\u00e7, spam g\u00f6nderen k\u00f6t\u00fcye kullan\u0131mlar\u0131 azaltmakt\u0131r.<\/p>\n<p>Port 25&#8217;in engelli olmas\u0131 web uygulaman\u0131z\u0131n e-posta g\u00f6nderemeyece\u011fi anlam\u0131na gelmez. Uygulamay\u0131 bir relay veya submission hizmetinin 587 numaral\u0131 portuna y\u00f6nlendirmek \u00e7o\u011fu durumda do\u011fru yakla\u015f\u0131md\u0131r. Sa\u011flay\u0131c\u0131dan blok kald\u0131r\u0131lmas\u0131n\u0131 istemek de m\u00fcmk\u00fcn; \u00f6nce kendi SMTP sunucunuzu mu \u00e7al\u0131\u015ft\u0131raca\u011f\u0131n\u0131z\u0131, yoksa harici bir relay mi kullanaca\u011f\u0131n\u0131z\u0131 netle\u015ftirin.<\/p>\n<h3>587 ve 465 aras\u0131ndaki fark<\/h3>\n<p>Port 587, RFC 6409&#8217;a g\u00f6re message submission i\u00e7in ayr\u0131lm\u0131\u015ft\u0131r. \u0130stemci genellikle d\u00fcz TCP ba\u011flant\u0131s\u0131yla ba\u015flar, sunucunun <code>EHLO<\/code> yan\u0131t\u0131nda <code>STARTTLS<\/code> yetene\u011fini g\u00f6r\u00fcr ve TLS oturumuna ge\u00e7er. Kimlik do\u011frulama \u00e7o\u011funlukla TLS kurulduktan sonra yap\u0131l\u0131r.<\/p>\n<p>Port 465&#8217;te TLS ba\u011flant\u0131n\u0131n ilk baytlar\u0131ndan itibaren ba\u015flar. Bu y\u00f6nteme implicit TLS veya SMTPS denir. RFC 8314, g\u00fcvenli submission i\u00e7in do\u011frudan TLS ba\u011flant\u0131s\u0131n\u0131 ve STARTTLS kullan\u0131m\u0131n\u0131 ele al\u0131r. Uygulama ayarlar\u0131nda &#8220;SSL&#8221; \u00e7o\u011fu k\u00fct\u00fcphanede 465&#8217;i, &#8220;STARTTLS&#8221; ise 587&#8217;yi ifade eder.<\/p>\n<p>Port numaras\u0131yla \u015fifreleme modunu kar\u0131\u015ft\u0131rmay\u0131n. 587&#8217;ye ba\u011flan\u0131p implicit TLS se\u00e7erseniz sunucu d\u00fcz SMTP yan\u0131t\u0131 g\u00f6nderdi\u011fi i\u00e7in TLS el s\u0131k\u0131\u015fmas\u0131 ba\u015far\u0131s\u0131z olur. 465&#8217;e ba\u011flan\u0131p STARTTLS komutu g\u00f6ndermek de ayn\u0131 hatal\u0131 e\u015fle\u015fmedir.<\/p>\n<h2 id=\"smtp-baglantisi-nasil-test-edilir\">SMTP ba\u011flant\u0131s\u0131 nas\u0131l test edilir?<\/h2>\n<p>Ben \u00f6nce a\u011f eri\u015fimini, sonra TLS&#8217;yi, en son uygulama ayarlar\u0131n\u0131 test ederim. Her \u015feyi ayn\u0131 anda de\u011fi\u015ftirmek sorunun yerini gizler. Portun a\u00e7\u0131k olmas\u0131 da SMTP kimlik do\u011frulamas\u0131n\u0131n veya mesaj tesliminin \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 kan\u0131tlamaz.<\/p>\n<h3>587 numaral\u0131 portta STARTTLS testi<\/h3>\n<pre><code>openssl s_client -starttls smtp -connect smtp.ornek.com:587 -crlf -servername smtp.ornek.com<\/code><\/pre>\n<p>Ba\u015far\u0131l\u0131 ba\u011flant\u0131da sertifika zincirini ve TLS s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6r\u00fcrs\u00fcn\u00fcz. Ard\u0131ndan elle <code>EHLO test.example<\/code> yazd\u0131\u011f\u0131n\u0131zda sunucunun yetenekleri listelenir. \u00c7\u0131kt\u0131da <code>250-STARTTLS<\/code> g\u00f6rmeniz TLS&#8217;nin etkin oldu\u011fu anlam\u0131na gelmez; sunucunun bu \u00f6zelli\u011fi sundu\u011funu g\u00f6sterir.<\/p>\n<h3>465 numaral\u0131 portta TLS testi<\/h3>\n<pre><code>openssl s_client -connect smtp.ornek.com:465 -crlf -servername smtp.ornek.com<\/code><\/pre>\n<p>465&#8217;te <code>-starttls smtp<\/code> kullanm\u0131yorum, \u00e7\u00fcnk\u00fc TLS ba\u011flant\u0131n\u0131n ba\u015f\u0131nda kuruluyor. Sertifika ad\u0131 ba\u011fland\u0131\u011f\u0131n\u0131z hostname ile uyu\u015fmuyorsa istemci do\u011frulama hatas\u0131 verebilir. Sertifika kontrol\u00fcn\u00fc kapatmak yerine alan ad\u0131 ve sertifika yap\u0131land\u0131rmas\u0131n\u0131 d\u00fczeltin; g\u00fcvenlik uyar\u0131s\u0131n\u0131 susturmak \u00e7\u00f6z\u00fcm de\u011fil.<\/p>\n<h3>Porta eri\u015fim var m\u0131?<\/h3>\n<pre><code>nc -vz smtp.ornek.com 587<\/code><\/pre>\n<p>Bu komut yaln\u0131zca TCP ba\u011flant\u0131s\u0131n\u0131n kurulup kurulamad\u0131\u011f\u0131n\u0131 s\u0131nar. <code>succeeded<\/code> \u00e7\u0131kt\u0131s\u0131 portun eri\u015filebilir oldu\u011funu s\u00f6yler; SMTP hesab\u0131n\u0131n do\u011fru oldu\u011funu s\u00f6ylemez. <code>timed out<\/code> sonucu g\u00fcvenlik duvar\u0131, sa\u011flay\u0131c\u0131 filtresi, yanl\u0131\u015f IP veya a\u011f y\u00f6nlendirmesiyle ilgili olabilir. A\u011f yolunu incelemek gerekti\u011finde <code>mtr<\/code> kullan\u0131r\u0131m. TCP port testiyle rota analizini ayn\u0131 \u015fey sanmamak gerekiyor.<\/p>\n<h2 id=\"smtp-kimlik-dogrulamasi-ve-tls\">SMTP kimlik do\u011frulamas\u0131 ve TLS<\/h2>\n<p>SMTP AUTH, g\u00f6nderim yapan istemcinin kullan\u0131c\u0131 ad\u0131 ve parolayla tan\u0131nmas\u0131n\u0131 sa\u011flar. Kimlik do\u011frulama tek ba\u015f\u0131na \u015fifreleme sa\u011flamaz. Kullan\u0131c\u0131 ad\u0131 ve parolan\u0131n d\u00fcz ba\u011flant\u0131da g\u00f6nderilmesi a\u011f \u00fczerinde dinleme riski olu\u015fturur. G\u00fcvenilir yap\u0131land\u0131rmada \u00f6nce TLS kurulur, ard\u0131ndan sunucunun sundu\u011fu AUTH mekanizmalar\u0131ndan biri kullan\u0131l\u0131r.<\/p>\n<p>Bir uygulamada \u015fu bilgiler ayr\u0131 ayr\u0131 bulunur:<\/p>\n<ul>\n<li>SMTP hostname: \u00d6rne\u011fin <code>smtp.ornek.com<\/code>.<\/li>\n<li>Port: Sa\u011flay\u0131c\u0131n\u0131n \u00f6nerdi\u011fi 587 veya 465.<\/li>\n<li>TLS modu: STARTTLS ya da do\u011frudan TLS.<\/li>\n<li>Kullan\u0131c\u0131 ad\u0131: \u00c7o\u011fu hizmette tam e-posta adresi.<\/li>\n<li>Parola: Uygulamaya \u00f6zel parola veya SMTP parolas\u0131 olabilir.<\/li>\n<li>G\u00f6nderen adresi: Hesab\u0131n ya da sunucu politikas\u0131n\u0131n izin verdi\u011fi adres.<\/li>\n<\/ul>\n<p>Web uygulamas\u0131n\u0131n hata g\u00fcnl\u00fc\u011f\u00fcnde parolay\u0131 a\u00e7\u0131k\u00e7a b\u0131rakmay\u0131n. Ortam de\u011fi\u015fkenleri veya uygulaman\u0131n gizli yap\u0131land\u0131rma mekanizmas\u0131 kullan\u0131labilir. Dosya izinleri de yaln\u0131zca web servis kullan\u0131c\u0131s\u0131n\u0131n okuyabilece\u011fi \u015fekilde s\u0131n\u0131rland\u0131r\u0131lmal\u0131. Her i\u015fi root ile y\u00fcr\u00fctme al\u0131\u015fkanl\u0131\u011f\u0131 burada da geri teper.<\/p>\n<h2 id=\"smtp-imap-ve-pop3-ayni-isi-mi-yapar\">SMTP, IMAP ve POP3 ayn\u0131 i\u015fi mi yapar?<\/h2>\n<p>SMTP g\u00f6nderme ve sunucular aras\u0131 teslim i\u015fini yapar. IMAP ve POP3 ise teslim edilmi\u015f mesajlar\u0131n kullan\u0131c\u0131 taraf\u0131ndan al\u0131nmas\u0131 veya senkronize edilmesi i\u00e7in kullan\u0131l\u0131r. Gelen posta \u00e7al\u0131\u015f\u0131rken giden posta \u00e7al\u0131\u015fmayabilir; iki i\u015flem farkl\u0131 protokol, port ve kimlik do\u011frulama ayarlar\u0131na sahiptir.<\/p>\n<table>\n<thead>\n<tr>\n<th>Protokol<\/th>\n<th>Temel g\u00f6rev<\/th>\n<th>Yayg\u0131n portlar<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>SMTP<\/td>\n<td>Mesaj g\u00f6nderme ve posta sunucular\u0131 aras\u0131nda aktar\u0131m<\/td>\n<td>25, 465, 587<\/td>\n<\/tr>\n<tr>\n<td>IMAP<\/td>\n<td>Mesajlar\u0131 sunucuda tutarak klas\u00f6rlerle senkronize etme<\/td>\n<td>143, 993<\/td>\n<\/tr>\n<tr>\n<td>POP3<\/td>\n<td>Mesajlar\u0131 istemciye indirme<\/td>\n<td>110, 995<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Bu ayr\u0131m\u0131 kendi laboratuvar\u0131mda da ya\u015fayarak \u00f6\u011frendim. Bir kernel g\u00fcncellemesinden sonra test makinem a\u00e7\u0131lmad\u0131; rescue mode&#8217;a ge\u00e7ip dosya sistemini ba\u011flad\u0131m, <code>chroot<\/code> i\u00e7inde GRUB&#8217;u yeniden kurdum ve posta servisinin yap\u0131land\u0131rmas\u0131n\u0131 snapshot&#8217;tan kar\u015f\u0131la\u015ft\u0131rd\u0131m. Sorun SMTP komutlar\u0131nda de\u011fildi, g\u00fcncelleme sonras\u0131 a\u00e7\u0131l\u0131\u015f zincirindeydi. O olaydan sonra servis ayarlar\u0131n\u0131 de\u011fi\u015ftirmeden \u00f6nce VPS snapshot&#8217;\u0131 almay\u0131 ve kritik dosyalar\u0131n geri d\u00f6n\u00fc\u015f\u00fcn\u00fc denemeyi rutin haline getirdim. Snapshot tek ba\u015f\u0131na yedek de\u011fil, ama kriz an\u0131nda \u00e7ok zaman kazand\u0131r\u0131yor.<\/p>\n<p>Uygulama bir proxy arkas\u0131ndaysa veya upstream yan\u0131t veremiyorsa SMTP&#8217;den ba\u011f\u0131ms\u0131z olarak <a href=\"https:\/\/www.vps.tc\/blog\/tr\/502-bad-gateway-hatasi-nedir-nasil-cozulur\/\">502 Bad Gateway Hatas\u0131 Nedir ve Nas\u0131l \u00c7\u00f6z\u00fcl\u00fcr?<\/a> kontrol listesindeki yakla\u015f\u0131m yararl\u0131 olabilir. Hata kodu ayn\u0131 g\u00f6r\u00fcnse de web sunucusunun upstream&#8217;i ile SMTP sunucusunun ba\u011flant\u0131s\u0131n\u0131 ayr\u0131 ayr\u0131 incelemek gerekir.<\/p>\n<h2 id=\"smtp-gonderimi-calismiyorsa-nereden-baslanir\">SMTP g\u00f6nderimi \u00e7al\u0131\u015fm\u0131yorsa nereden ba\u015flan\u0131r?<\/h2>\n<p>Benim kulland\u0131\u011f\u0131m s\u0131ra \u015fu:<\/p>\n<ol>\n<li><strong>Hostname ve DNS:<\/strong> SMTP hostname&#8217;i do\u011fru mu, DNS do\u011fru IP&#8217;ye mi d\u00f6n\u00fcyor? <code>dig +short A smtp.ornek.com<\/code> ve gerekiyorsa <code>dig +short AAAA smtp.ornek.com<\/code> ile kontrol edin.<\/li>\n<li><strong>Port eri\u015fimi:<\/strong> VPS sa\u011flay\u0131c\u0131s\u0131 port 25 \u00e7\u0131k\u0131\u015f\u0131n\u0131 k\u0131s\u0131tl\u0131yor mu? 587 veya 465&#8217;e <code>nc<\/code> ile eri\u015filebiliyor mu?<\/li>\n<li><strong>TLS modu:<\/strong> 465 i\u00e7in implicit TLS, 587 i\u00e7in STARTTLS se\u00e7ilmi\u015f mi? Sertifika hostname ile e\u015fle\u015fiyor mu?<\/li>\n<li><strong>Kimlik bilgileri:<\/strong> Kullan\u0131c\u0131 ad\u0131 tam adres mi, parola g\u00fcncel mi, SMTP AUTH etkin mi?<\/li>\n<li><strong>G\u00f6nderen politikas\u0131:<\/strong> <code>MAIL FROM<\/code> ve <code>From:<\/code> adresleri hizmetin izin verdi\u011fi alan adlar\u0131yla uyumlu mu?<\/li>\n<li><strong>Sunucu loglar\u0131:<\/strong> Uygulaman\u0131n logu ile SMTP sunucusunun logunu ayn\u0131 zaman aral\u0131\u011f\u0131nda kar\u015f\u0131la\u015ft\u0131r\u0131n.<\/li>\n<li><strong>DNS kimlik do\u011frulama kay\u0131tlar\u0131:<\/strong> SPF, DKIM ve DMARC kay\u0131tlar\u0131 al\u0131c\u0131 sunucular\u0131n mesaj\u0131 reddetmesine veya spam klas\u00f6r\u00fcne ta\u015f\u0131mas\u0131na neden olabilir.<\/li>\n<\/ol>\n<p>SPF, DKIM ve DMARC SMTP komutlar\u0131 de\u011fildir. Bunlar alan ad\u0131n\u0131n g\u00f6nderim yetkisini ve mesaj\u0131n b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc de\u011ferlendiren ek mekanizmalard\u0131r. SMTP oturumu ba\u015far\u0131yla tamamland\u0131\u011f\u0131 halde mesaj gelen kutusuna d\u00fc\u015fm\u00fcyorsa sorun bu katmanda ya\u015fanabilir.<\/p>\n<p>Mesaj kuyrukta bekliyorsa hemen servisi yeniden ba\u015flatmak yerine hata kodunu okuyun. <code>4xx<\/code> yan\u0131tlar\u0131 \u00e7o\u011funlukla ge\u00e7ici sorun veya erteleme, <code>5xx<\/code> yan\u0131tlar\u0131 kal\u0131c\u0131 ret anlam\u0131na gelir; kesin yorum sunucunun a\u00e7\u0131klama sat\u0131r\u0131yla yap\u0131lmal\u0131d\u0131r.<\/p>\n<p>Benim eski al\u0131\u015fkanl\u0131\u011f\u0131m kuyru\u011fu temizlemek i\u00e7in servisi yeniden ba\u015flatmakt\u0131. Logu okumadan yap\u0131lan bu hareket bazen sorunu \u00e7\u00f6zmez, yaln\u0131zca te\u015fhisi zorla\u015ft\u0131r\u0131r. \u00d6nce kay\u0131t, sonra m\u00fcdahale.<\/p>\n<h2 id=\"smtp-sunucusu-kurarken-kritik-ayarlar\">SMTP sunucusu kurarken kritik ayarlar<\/h2>\n<p>Kendi Postfix veya ba\u015fka bir MTA sunucunuzu kuruyorsan\u0131z yaln\u0131zca portu dinlemek yeterli de\u011fildir. Sunucunun kendi alan ad\u0131 i\u00e7in yetkili olmas\u0131, relay izinlerinin s\u0131n\u0131rlanmas\u0131, TLS sertifikas\u0131n\u0131n do\u011fru tan\u0131mlanmas\u0131 ve DNS kay\u0131tlar\u0131n\u0131n uyumlu olmas\u0131 gerekir.<\/p>\n<ul>\n<li>Port 25&#8217;te a\u00e7\u0131k relay b\u0131rakmay\u0131n. Kimli\u011fi do\u011frulanmam\u0131\u015f herkesin ba\u015fka alan adlar\u0131na mesaj g\u00f6nderebilmesi ciddi k\u00f6t\u00fcye kullan\u0131m riskidir.<\/li>\n<li>Submission i\u00e7in 587&#8217;yi ayr\u0131 bir politikayla \u00e7al\u0131\u015ft\u0131r\u0131n ve kimlik do\u011frulamay\u0131 zorunlu tutun.<\/li>\n<li>465 kullan\u0131yorsan\u0131z do\u011frudan TLS yap\u0131land\u0131rmas\u0131n\u0131, 587 kullan\u0131yorsan\u0131z STARTTLS politikas\u0131n\u0131 test edin.<\/li>\n<li>PTR, A veya AAAA, MX ve gerekti\u011finde SPF kay\u0131tlar\u0131n\u0131n birbiriyle \u00e7eli\u015fmedi\u011fini kontrol edin.<\/li>\n<li>Mail kuyru\u011funu, ba\u015far\u0131s\u0131z teslimatlar\u0131 ve disk kullan\u0131m\u0131n\u0131 izleyin. Biriken kuyruk \u00e7o\u011fu zaman sorunun kendisi de\u011fil belirtisidir.<\/li>\n<li>Yedekleri yaln\u0131zca almakla kalmay\u0131n; posta kutusu ve yap\u0131land\u0131rma geri d\u00f6n\u00fc\u015f\u00fcn\u00fc de test edin.<\/li>\n<\/ul>\n<p>SMTP sunucusu internete a\u00e7\u0131k bir hizmettir. SSH i\u00e7in <code>fail2ban<\/code> ve <code>nftables<\/code> kullanmak iyi bir ba\u015flang\u0131\u00e7 olabilir; mail servisinin kendi rate limit, relay ve kimlik do\u011frulama kurallar\u0131n\u0131 ayr\u0131ca yap\u0131land\u0131rman\u0131z gerekir. SSH portunu de\u011fi\u015ftirmek tek ba\u015f\u0131na g\u00fcvenlik say\u0131lmad\u0131\u011f\u0131 gibi SMTP portunu de\u011fi\u015ftirmek de spam sorununu \u00e7\u00f6zmez.<\/p>\n<p>\u015eifreli ba\u011flant\u0131 taraf\u0131nda sertifika kurulumunu incelemek isterseniz <a href=\"https:\/\/www.vps.tc\/blog\/tr\/vps-ssl-sertifikasi-kurulumu-lets-encrypt\/\">VPS&#8217;te SSL Sertifikas\u0131 Kurulumu: Let&#8217;s Encrypt Rehberi<\/a> ba\u015flang\u0131\u00e7 i\u00e7in uygun bir referanst\u0131r. SMTP sertifikas\u0131 web sunucusunun sertifikas\u0131yla ayn\u0131 olabilir; fakat her servis i\u00e7in dosya yolu ve yenileme sonras\u0131 reload davran\u0131\u015f\u0131 ayr\u0131 kontrol edilmelidir.<\/p>\n<p>SMTP ile e-posta g\u00f6nderiminin nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 \u00f6\u011frendikten sonra, gelen mesajlar\u0131n farkl\u0131 cihazlarda nas\u0131l e\u015fitlendi\u011fini merak ediyorsan\u0131z <a href=\"https:\/\/www.vps.tc\/blog\/tr\/imap-nedir-imap-e-nasil-erisilir\/\">IMAP nedir ve nas\u0131l eri\u015filir?<\/a> rehberime de g\u00f6z atabilirsiniz. Bu yaz\u0131da IMAP ba\u011flant\u0131s\u0131, portlar\u0131 ve hesap kurulum ad\u0131mlar\u0131n\u0131 pratik \u015fekilde anlatt\u0131m.<\/p>\n<h2 id=\"sik-sorulan-sorular\">S\u0131k Sorulan Sorular<\/h2>\n<h3>SMTP portu olarak 25 mi, 587 mi kullan\u0131lmal\u0131?<\/h3>\n<p>Bir uygulama veya e-posta istemcisi mesaj g\u00f6nderecekse genellikle 587 ve STARTTLS tercih edilir. Port 25 daha \u00e7ok posta sunucular\u0131 aras\u0131ndaki teslimat i\u00e7in kullan\u0131l\u0131r ve VPS sa\u011flay\u0131c\u0131lar\u0131 bu portun \u00e7\u0131k\u0131\u015f\u0131n\u0131 k\u0131s\u0131tlayabilir.<\/p>\n<h3>465 ve 587 aras\u0131ndaki temel fark nedir?<\/h3>\n<p>465 numaral\u0131 portta TLS ba\u011flant\u0131n\u0131n en ba\u015f\u0131nda kurulur. 587 numaral\u0131 portta ba\u011flant\u0131 SMTP olarak ba\u015flar ve <code>STARTTLS<\/code> komutuyla TLS&#8217;ye ge\u00e7er. Uygulaman\u0131n se\u00e7ti\u011fi g\u00fcvenlik modu portla uyumlu olmal\u0131d\u0131r.<\/p>\n<h3>SMTP ile e-posta okunabilir mi?<\/h3>\n<p>Hay\u0131r. SMTP mesaj g\u00f6ndermek i\u00e7in, IMAP veya POP3 ise gelen mesajlara eri\u015fmek i\u00e7in kullan\u0131l\u0131r. Bir hesab\u0131n g\u00f6nderme ayarlar\u0131n\u0131n \u00e7al\u0131\u015fmas\u0131, gelen posta ayarlar\u0131n\u0131n da do\u011fru oldu\u011fu anlam\u0131na gelmez.<\/p>\n<h3>SMTP ba\u011flant\u0131s\u0131 ba\u015far\u0131l\u0131 oldu\u011fu halde e-posta neden gelmez?<\/h3>\n<p>SMTP sunucusunun mesaj\u0131 kabul etmesi teslimat\u0131n tamamland\u0131\u011f\u0131n\u0131 garanti etmez. SPF, DKIM, DMARC, al\u0131c\u0131 sunucunun spam politikas\u0131, kuyrukta ya\u015fanan gecikme veya g\u00f6nderen alan ad\u0131n\u0131n itibar\u0131 sonraki a\u015famada etkili olabilir. \u0130lgili SMTP yan\u0131t\u0131 ve sunucu loglar\u0131 birlikte incelenmelidir.<\/p>\n<h2 id=\"kaynaklar\">Kaynaklar<\/h2>\n<ul class=\"aiw-sources\">\n<li><a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc5321\" target=\"_blank\" rel=\"noopener nofollow\">RFC 5321 &#8211; Simple Mail Transfer Protocol<\/a> \u2014 rfc-editor.org<\/li>\n<li><a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc6409\" target=\"_blank\" rel=\"noopener nofollow\">RFC 6409 &#8211; Message Submission for Mail<\/a> \u2014 rfc-editor.org<\/li>\n<li><a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc8314\" target=\"_blank\" rel=\"noopener nofollow\">RFC 8314 &#8211; Cleartext Considered Obsolete<\/a> \u2014 rfc-editor.org<\/li>\n<li><a href=\"https:\/\/www.iana.org\/assignments\/service-names-port-numbers\/service-names-port-numbers.xhtml\" target=\"_blank\" rel=\"noopener nofollow\">IANA &#8211; Service Name and Transport Protocol Port Number Registry<\/a> \u2014 iana.org<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>SMTP&#8217;nin e-posta g\u00f6nderimindeki g\u00f6revini, 25, 465 ve 587 numaral\u0131 portlar\u0131n farklar\u0131n\u0131, TLS modlar\u0131n\u0131 ve ba\u011flant\u0131 sorunlar\u0131n\u0131 anlat\u0131yorum.<\/p>\n","protected":false},"author":2,"featured_media":620,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[279],"tags":[1937,1939,1941,1935,1943,114],"class_list":["post-622","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nedir","tag-e-posta","tag-mail-sunucusu","tag-postfix","tag-smtp","tag-starttls","tag-vps"],"lang":"tr","translations":{"tr":622,"en":623},"pll_sync_post":[],"_links":{"self":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/622","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/comments?post=622"}],"version-history":[{"count":2,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/622\/revisions"}],"predecessor-version":[{"id":642,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/622\/revisions\/642"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/media\/620"}],"wp:attachment":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/media?parent=622"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/categories?post=622"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/tags?post=622"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}