{"id":129,"title":"Office 365 \u00fczerinden SMTP mail g\u00f6nderim ayarlar\u0131","content":"Office 365, uygulama ve sistemlerinizden e-posta g\u00f6ndermek i\u00e7in kullanabilece\u011finiz g\u00fcvenli SMTP (Simple Mail Transfer Protocol) hizmeti sunar. Bu rehberde, Office 365 SMTP ayarlar\u0131n\u0131 yap\u0131land\u0131rma ve kullanma ad\u0131mlar\u0131; <ol> <li><strong>Temel SMTP Ayarlar\u0131<\/strong>: <ul> <li>Sunucu: smtp.office365.com<\/li> <li>Port: 587<\/li> <li>\u015eifreleme: TLS<\/li> <li>Kimlik do\u011frulama gerekiyor<\/li> <\/ul> <\/li> <li><strong>\u0130ki Fakt\u00f6rl\u00fc Do\u011frulama<\/strong> etkinse uygulama \u015fifresi olu\u015fturma ad\u0131mlar\u0131<\/li> <li><strong>Farkl\u0131 Programlama Dillerinde Kullan\u0131m \u00d6rnekleri<\/strong>: <ul> <li>PHP<\/li> <li>C#<\/li> <li>Python<\/li> <li>Node.js<\/li> <\/ul> <\/li> <li><strong>S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/strong>: <ul> <li>Kimlik do\u011frulama sorunlar\u0131<\/li> <li>SMTP eri\u015fim engelleri<\/li> <li>TLS hatalar\u0131<\/li> <li>G\u00f6nderim limiti sorunlar\u0131<\/li> <\/ul> <\/li> <li><strong>G\u00fcvenlik \u00d6nerileri<\/strong><\/li> <li><strong>Exchange Online PowerShell ile SMTP Ayarlar\u0131 Y\u00f6netimi<\/strong><\/li> <\/ol> &nbsp; <h2>SMTP Ayarlar\u0131 Genel Bilgiler<\/h2> Office 365 i\u00e7in temel SMTP ayarlar\u0131 \u015funlard\u0131r: <table> <thead> <tr> <th>Ayar<\/th> <th>De\u011fer<\/th> <\/tr> <\/thead> <tbody> <tr> <td>SMTP Sunucu Adresi<\/td> <td>smtp.office365.com<\/td> <\/tr> <tr> <td>Port<\/td> <td>587 (TLS\/STARTTLS)<\/td> <\/tr> <tr> <td>\u015eifreleme Y\u00f6ntemi<\/td> <td>TLS (Transport Layer Security)<\/td> <\/tr> <tr> <td>Kimlik Do\u011frulama<\/td> <td>Evet (Kullan\u0131c\u0131 ad\u0131 ve \u015fifre gerekli)<\/td> <\/tr> <tr> <td>Kullan\u0131c\u0131 Ad\u0131<\/td> <td>Office 365 e-posta adresiniz (\u00f6rn: kullanici@sirketiniz.com)<\/td> <\/tr> <tr> <td>\u015eifre<\/td> <td>Office 365 hesap \u015fifreniz veya uygulama \u015fifresi<\/td> <\/tr> <\/tbody> <\/table> <h2>Uygulama \u015eifresi Olu\u015fturma (\u0130ki Fakt\u00f6rl\u00fc Do\u011frulama Etkinse)<\/h2> Office 365 hesab\u0131n\u0131zda iki fakt\u00f6rl\u00fc do\u011frulama (2FA) etkinse, SMTP kimlik do\u011frulamas\u0131 i\u00e7in \u00f6zel bir uygulama \u015fifresi olu\u015fturman\u0131z gerekir: <ol> <li><a href=\"https:\/\/account.microsoft.com\/security\">https:\/\/account.microsoft.com\/security<\/a> adresine gidin ve oturum a\u00e7\u0131n<\/li> <li>\"G\u00fcvenlik\" b\u00f6l\u00fcm\u00fcnde \"Geli\u015fmi\u015f g\u00fcvenlik se\u00e7enekleri\"ne t\u0131klay\u0131n<\/li> <li>\"Uygulama \u015fifreleri\" b\u00f6l\u00fcm\u00fcne gidin<\/li> <li>\"Yeni uygulama \u015fifresi olu\u015ftur\" se\u00e7ene\u011fini t\u0131klay\u0131n<\/li> <li>Olu\u015fturulan \u015fifreyi kaydedin (bu \u015fifre yaln\u0131zca bir kez g\u00f6sterilecektir)<\/li> <\/ol> <h2>Office 365 SMTP'yi Uygulama ve Sistemlerde Kullanma<\/h2> <h3>PHP ile Kullan\u0131m \u00d6rne\u011fi<\/h3> <pre><code ><\/code><\/pre> <pre  data-enlighter-language=\"python\">&lt;?php use PHPMailer\\PHPMailer\\PHPMailer; use PHPMailer\\PHPMailer\\Exception; require 'vendor\/autoload.php'; $mail = new PHPMailer(true); try { \/\/Sunucu ayarlar\u0131 $mail-&gt;isSMTP(); $mail-&gt;Host = 'smtp.office365.com'; $mail-&gt;SMTPAuth = true; $mail-&gt;Username = 'kullanici@sirketiniz.com'; $mail-&gt;Password = 'sifreniz_veya_uygulama_sifreniz'; $mail-&gt;SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; $mail-&gt;Port = 587; \/\/Al\u0131c\u0131lar $mail-&gt;setFrom('kullanici@sirketiniz.com', 'G\u00f6nderen Ad\u0131'); $mail-&gt;addAddress('alici@ornek.com', 'Al\u0131c\u0131 Ad\u0131'); $mail-&gt;addReplyTo('yanit@sirketiniz.com', 'Yan\u0131t Adresi'); \/\/\u0130\u00e7erik $mail-&gt;isHTML(true); $mail-&gt;Subject = 'E-posta Ba\u015fl\u0131\u011f\u0131'; $mail-&gt;Body = 'Bu bir &lt;b&gt;HTML&lt;\/b&gt; mesaj\u0131d\u0131r.'; $mail-&gt;AltBody = 'Bu, HTML mail istemcileri i\u00e7in d\u00fcz metin s\u00fcr\u00fcm\u00fcd\u00fcr'; $mail-&gt;send(); echo 'Mesaj g\u00f6nderildi'; } catch (Exception $e) { echo \"Mesaj g\u00f6nderilemedi. Hata: {$mail-&gt;ErrorInfo}\"; } ?&gt;<\/pre> <pre><code ><\/code><\/pre> &nbsp; <pre><code ><\/code><\/pre> <h3>C# ile Kullan\u0131m \u00d6rne\u011fi<\/h3> <pre><code ><\/code><\/pre> <pre  data-enlighter-language=\"python\">using System; using System.Net; using System.Net.Mail; class Program { static void Main() { try { MailMessage mail = new MailMessage(); SmtpClient SmtpServer = new SmtpClient(\"smtp.office365.com\"); mail.From = new MailAddress(\"kullanici@sirketiniz.com\"); mail.To.Add(\"alici@ornek.com\"); mail.Subject = \"E-posta Testi\"; mail.Body = \"Bu bir test e-postas\u0131d\u0131r.\"; SmtpServer.Port = 587; SmtpServer.Credentials = new NetworkCredential(\"kullanici@sirketiniz.com\", \"sifreniz_veya_uygulama_sifreniz\"); SmtpServer.EnableSsl = true; SmtpServer.Send(mail); Console.WriteLine(\"E-posta ba\u015far\u0131yla g\u00f6nderildi.\"); } catch (Exception ex) { Console.WriteLine(\"Hata olu\u015ftu: \" + ex.Message); } } }<\/pre> <pre><code ><\/code><\/pre> <pre><code ><\/code><\/pre> <h3>Python ile Kullan\u0131m \u00d6rne\u011fi<\/h3> <pre><code ><\/code><\/pre> <pre  data-enlighter-language=\"python\">import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart sender_email = \"kullanici@sirketiniz.com\" receiver_email = \"alici@ornek.com\" password = \"sifreniz_veya_uygulama_sifreniz\" message = MIMEMultipart(\"alternative\") message = \"Office 365 SMTP Test\" message = sender_email message = receiver_email # E-posta i\u00e7eri\u011fi text = \"Merhaba,\\nBu bir test e-postas\u0131d\u0131r.\" html = \"\"\"\\ &lt;html&gt; &lt;body&gt; &lt;p&gt;Merhaba,&lt;br&gt; Bu bir &lt;b&gt;test&lt;\/b&gt; e-postas\u0131d\u0131r. &lt;\/p&gt; &lt;\/body&gt; &lt;\/html&gt; \"\"\" part1 = MIMEText(text, \"plain\") part2 = MIMEText(html, \"html\") message.attach(part1) message.attach(part2) # SMTP sunucusu ile ba\u011flant\u0131 kurma try: server = smtplib.SMTP(\"smtp.office365.com\", 587) server.starttls() server.login(sender_email, password) server.sendmail(sender_email, receiver_email, message.as_string()) print(\"E-posta ba\u015far\u0131yla g\u00f6nderildi!\") except Exception as e: print(f\"Hata olu\u015ftu: {e}\") finally: server.quit()<\/pre> <pre><code ><\/code><\/pre> &nbsp; <pre><code ><\/code><\/pre> <h3>Node.js ile Kullan\u0131m \u00d6rne\u011fi<\/h3> <pre><code ><\/code><\/pre> <pre  data-enlighter-language=\"python\">const nodemailer = require('nodemailer'); \/\/ SMTP yap\u0131land\u0131rmas\u0131 let transporter = nodemailer.createTransport({ host: 'smtp.office365.com', port: 587, secure: false, \/\/ TLS i\u00e7in false auth: { user: 'kullanici@sirketiniz.com', pass: 'sifreniz_veya_uygulama_sifreniz' } }); \/\/ E-posta g\u00f6nderme let mailOptions = { from: '\"\u015eirket Ad\u0131\" &lt;kullanici@sirketiniz.com&gt;', to: 'alici@ornek.com, alici2@ornek.com', subject: 'Office 365 SMTP Test', text: 'Bu bir test e-postas\u0131d\u0131r.', html: '&lt;b&gt;Bu bir test e-postas\u0131d\u0131r.&lt;\/b&gt;' }; transporter.sendMail(mailOptions, (error, info) =&gt; { if (error) { return console.log('Hata:', error); } console.log('Mesaj g\u00f6nderildi:', info.messageId); });<\/pre> <pre><code ><\/code><\/pre> &nbsp; <pre><code ><\/code><\/pre> <h2>S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h2> <h3>1. Kimlik Do\u011frulama Ba\u015far\u0131s\u0131z<\/h3> <strong>Sorun:<\/strong> \"5.7.3 Authentication unsuccessful\" hatas\u0131 al\u0131yorsunuz. <strong>\u00c7\u00f6z\u00fcm:<\/strong> <ul> <li>Kullan\u0131c\u0131 ad\u0131 ve \u015fifrenin do\u011fru oldu\u011fundan emin olun<\/li> <li>\u0130ki fakt\u00f6rl\u00fc do\u011frulama etkinse uygulama \u015fifresi kullan\u0131n<\/li> <li>Hesab\u0131n\u0131z\u0131n kilitli olup olmad\u0131\u011f\u0131n\u0131 kontrol edin<\/li> <\/ul> <h3>2. SMTP Eri\u015fimi Engellendi<\/h3> <strong>Sorun:<\/strong> \"5.7.57 SMTP; Client was not authenticated to send anonymous mail during MAIL FROM\" hatas\u0131 al\u0131yorsunuz. <strong>\u00c7\u00f6z\u00fcm:<\/strong> <ul> <li>Office 365 Admin merkezinden SMTP kimlik do\u011frulamas\u0131n\u0131n a\u00e7\u0131k oldu\u011fundan emin olun<\/li> <li>Admin center &gt; Kullan\u0131c\u0131lar &gt; Aktif kullan\u0131c\u0131lar &gt; E-posta &gt; Posta uygulamalar\u0131 y\u00f6netimi &gt; SMTP G\u00f6nderimi a\u00e7\u0131k olmal\u0131d\u0131r<\/li> <\/ul> <h3>3. TLS Hatas\u0131<\/h3> <strong>Sorun:<\/strong> \"Could not connect to SMTP host: smtp.office365.com, port: 587\" hatas\u0131 al\u0131yorsunuz. <strong>\u00c7\u00f6z\u00fcm:<\/strong> <ul> <li>G\u00fcvenlik duvar\u0131 veya antivir\u00fcs program\u0131n\u0131n 587 nolu portu engellememesini sa\u011flay\u0131n<\/li> <li>TLS 1.2 veya daha yeni bir s\u00fcr\u00fcm kulland\u0131\u011f\u0131n\u0131zdan emin olun<\/li> <\/ul> <h3>4. G\u00f6nderim Limiti A\u015f\u0131ld\u0131<\/h3> <strong>Sorun:<\/strong> \"Sending limits exceeded\" hatas\u0131 al\u0131yorsunuz. <strong>\u00c7\u00f6z\u00fcm:<\/strong> <ul> <li>Office 365, g\u00fcnl\u00fck e-posta g\u00f6nderim limitleri i\u00e7erir (genellikle 10,000 e-posta\/g\u00fcn)<\/li> <li>Toplu e-posta g\u00f6nderimleri i\u00e7in \u00f6zel Office 365 e-posta hizmetlerini kullanmay\u0131 d\u00fc\u015f\u00fcn\u00fcn<\/li> <\/ul> <h2>G\u00fcvenlik \u00d6nerileri<\/h2> <ol> <li><strong>\u015eifreleri Kodunuzda Saklamay\u0131n:<\/strong> \u00c7evresel de\u011fi\u015fkenler veya g\u00fcvenli yap\u0131land\u0131rma y\u00f6netimi kullan\u0131n<\/li> <li><strong>IP K\u0131s\u0131tlamalar\u0131n\u0131 Kullan\u0131n:<\/strong> Office 365 Admin merkezinden SMTP eri\u015fimine izin verilen IP adreslerini belirleyin<\/li> <li><strong>D\u00fczenli Denetim:<\/strong> Office 365 G\u00fcvenlik ve Uyumluluk merkezinden SMTP kullan\u0131m\u0131n\u0131 d\u00fczenli olarak izleyin<\/li> <li><strong>SPF, DKIM ve DMARC Kay\u0131tlar\u0131n\u0131 Yap\u0131land\u0131r\u0131n:<\/strong> E-postalar\u0131n\u0131z\u0131n g\u00fcvenli\u011fini ve teslim edilebilirli\u011fini art\u0131rmak i\u00e7in bu DNS kay\u0131tlar\u0131n\u0131 yap\u0131land\u0131r\u0131n<\/li> <\/ol> <h2>Exchange Online PowerShell ile SMTP Ayarlar\u0131n\u0131 Y\u00f6netme<\/h2> SMTP ayarlar\u0131n\u0131 y\u00f6netmek i\u00e7in Exchange Online PowerShell mod\u00fcl\u00fcn\u00fc kullanabilirsiniz: <pre><code ><\/code><\/pre> <pre  data-enlighter-language=\"python\"># Exchange Online PowerShell mod\u00fcl\u00fcn\u00fc y\u00fckleme Install-Module -Name ExchangeOnlineManagement # Exchange Online'a ba\u011flanma Connect-ExchangeOnline -UserPrincipalName admin@sirketiniz.com # Bir kullan\u0131c\u0131n\u0131n SMTP ayarlar\u0131n\u0131 kontrol etme Get-CASMailbox -Identity kullanici@sirketiniz.com | Select SmtpClientAuthenticationDisabled # SMTP kimlik do\u011frulamas\u0131n\u0131 etkinle\u015ftirme Set-CASMailbox -Identity kullanici@sirketiniz.com -SmtpClientAuthenticationDisabled $false <\/pre> <pre><code ><\/code><\/pre> <pre><code ><\/code><\/pre> Office 365 SMTP hizmeti, uygulamalar\u0131n\u0131z ve sistemleriniz i\u00e7in g\u00fcvenilir bir e-posta g\u00f6nderim altyap\u0131s\u0131 sunar. Bu rehberdeki ayarlar\u0131 ve \u00f6rnekleri kullanarak, \u00e7e\u015fitli programlama dillerinde ve platformlarda Office 365 SMTP hizmetini kolayca entegre edebilirsiniz. Modern uygulamalar i\u00e7in Graph API ve Microsoft 365 SDK'lar\u0131n\u0131 kullanmak da alternatif bir yakla\u015f\u0131m olabilir, \u00f6zellikle daha karma\u015f\u0131k e-posta i\u015flemleri yapman\u0131z gerekiyorsa bu se\u00e7enekleri de\u011ferlendirebilirsiniz. <ol> <li><\/li> <\/ol> &nbsp;","excerpt":"Office 365, uygulama ve sistemlerinizden e-posta g\u00f6ndermek i\u00e7in kullanabilece\u011finiz g\u00fcvenli SMTP (Simple Mail Transfer Protocol) hizmeti sunar. Bu...","created_at":"2025-04-05 10:33:00","updated_at":"2026-09-23 12:25:16","category_id":6,"view_count":965,"reading_time":7,"status":"published","editor_choice":0,"is_editor_choice":0,"published_at":"2025-04-05 10:33:00","featured_image":"resimyok.jpg","slug":"office-365-uzerinden-smtp-mail-gonderim-ayarlari","category_name":"Sistem","category_slug":"sistem"}