Hata Mesajı Tam Hâli
550 5.7.1 Client was not authenticated to send anonymous mail during MAIL FROM
SMTP; Client was not authenticated to send anonymous mail
SmtpClientAuthentication is disabled for the Tenant
Bu hata Microsoft 365 SMTP gönderim sırasında çıkar. Üç farklı kök nedene sahip — sırasıyla kontrol gerekir.
Kök Sebep 1 — Tenant Düzeyinde SMTP AUTH Kapalı (En Yaygın)
Microsoft Ekim 2022'den beri yeni tenant'larda SmtpClientAuthentication = Disabled default. Eski tenant'lar için 2024 başında security default güncellemesinde kapatıldı.
Durum tespiti
Connect-ExchangeOnline
Get-TransportConfig | Select SmtpClientAuthenticationDisabled
Çıktı True ise tenant düzeyinde kapalı.
Çözüm A — Tenant düzeyinde aç (önerilmez!)
Set-TransportConfig -SmtpClientAuthenticationDisabled $false
Tüm kullanıcılar için açar — güvenlik riski. Sadece test için, sonra tekrar kapat.
Çözüm B — Sadece belirli mailbox'a aç (önerilen)
Set-CASMailbox -Identity printer@firmaniz.com -SmtpClientAuthenticationDisabled $false
Bu mailbox SMTP AUTH yapabilir, diğerleri yapamaz. Multi-printer/scanner senaryolarında ideal.
Hangi mailbox'larda açık? — Audit
Get-CASMailbox -ResultSize Unlimited |
Where SmtpClientAuthenticationDisabled -eq $false |
Select Identity, SmtpClientAuthenticationDisabled
Kök Sebep 2 — App Password Eksik (MFA Aktif Hesap)
Hesabında MFA varsa SMTP basic auth ile çalışmaz. App password gerekir.
App password üretme
- Kullanıcı
https://aka.ms/mfasetup veya My Account → Security info
- "Add sign-in method" → "App password"
- Adı: "Yazıcı SMTP" (kafa karışmasın)
- 16 karakterli parolayı kopyala
- Yazıcı/uygulama SMTP ayarına kullanıcı adı + bu app password yaz
App password görünmüyor
Tenant'ta app password politikası kapalıdır. Entra Admin → Authentication methods → "Allow users to create and use app passwords". Aç → 1 saat yayılımdan sonra kullanıcı görür.
Kök Sebep 3 — Yanlış SMTP Sunucusu / Port
Microsoft 365 SMTP relay tek doğru:
Sunucu: smtp.office365.com
Port: 587
Encryption: STARTTLS
Authentication: Yes
Username: ahmet@firmaniz.com (tam UPN)
Password: parola veya App Password
Yaygın yanlışlar
- Port 25 (kapalı, sadece authenticated relay için)
- Port 465 (eski SSL — Microsoft 365'te yok)
- Sunucu: outlook.office365.com (IMAP/POP için doğru, SMTP için yanlış)
- Username: sadece "ahmet" (tam UPN şart)
Cihaz Tipine Göre Tipik Senaryo
Yazıcı / Tarayıcı (HP, Canon, Brother)
3 yöntem mümkün:
| Yöntem | Sunucu | Auth | SMTP AUTH gerekli |
| Direct send | firmaniz-com.mail.protection.outlook.com:25 | Yok | Hayır |
| SMTP relay (Connector) | firmaniz-com.mail.protection.outlook.com:25 | IP whitelisting | Hayır |
| SMTP client submission | smtp.office365.com:587 | Username + App Password | Evet |
En kolay: Direct send. Sadece kendi tenant'a gönderim için yeterli (içeride mail at-> ulaşır).
Web uygulaması (PHP, Python, .NET)
İdeal: Microsoft Graph API ile Send-MgUserMail (OAuth, MFA dostu, güvenli).
# Python örneği
from msgraph import GraphServiceClient
from azure.identity import ClientSecretCredential
cred = ClientSecretCredential(tenant_id, client_id, client_secret)
client = GraphServiceClient(cred, scopes=["https://graph.microsoft.com/.default"])
await client.users.by_user_id("noreply@firmaniz.com").send_mail.post(...)
Detay: Microsoft Graph PowerShell + 10 Komut.
Direct Send vs Authenticated SMTP — Karar Matrisi
| Senaryo | Yöntem |
| Yazıcı, sadece kendi şirkete gönderim | Direct send |
| Yazıcı, dış adreslere de gönderim | SMTP relay (Connector + IP) |
| Web uygulaması, az sayıda mail | SMTP client submission + App Password |
| Web uygulaması, modern | Microsoft Graph Send Mail API |
| Toplu transactional (100K+/gün) | 3rd party (SendGrid, Postmark, AWS SES) |
Connector Kurma (SMTP Relay)
Yazıcılar için en güvenli yöntem. Exchange Admin Center → Mail flow → Connectors → "+":
- From: "Your organization's email server"
- To: "Office 365"
- Auth: "By verifying that the IP address..." → yazıcı public IP'sini ekle
- Save
Yazıcı SMTP ayarı:
Sunucu: firmaniz-com.mail.protection.outlook.com
Port: 25
Auth: KAPALI
SSL: TLS
Sınır: günde 10K mail.
SPF Kaydı — Dış Mail Gönderince SPAM'e Düşmesin
3rd party (yazıcı IP, web sunucusu) SMTP yapıyorsa SPF kaydında belirt:
v=spf1 ip4:185.123.45.67 include:spf.protection.outlook.com -all
Detay: SPF DKIM DMARC Rehberi.
"Bypass" Olmuyor — Hâlâ Hata Alıyorum
- SmtpClientAuthenticationDisabled değişikliği 1 saat yayılım alır
- App password değişikliği anında etkin
- Connector değişikliği 5-10 dk
- SPF değişikliği 1-24 saat (DNS TTL kadar)
SSS
Tenant'ta SmtpClientAuthentication'ı tamamen açabilir miyim?
Açabilirsiniz ama Microsoft önermiyor. Spear-phishing artar, OAuth daha güvenli.
Şirketin tüm yazıcılarını tek tek mailbox'larla bağlamak yerine?
Tek "yazici@firmaniz.com" mailbox aç, SmtpClientAuthenticationDisabled = false yap, tüm yazıcılar bu hesabı kullansın.
App password kayboldu/sızdı — iptal nasıl?
aka.ms/mfasetup → Security info → app password'ü "Delete". Sızsa bile MFA kullanan ana hesap güvenli, sadece SMTP kapanır.
"Authentication unsuccessful" alıyorum (550 değil 535)
Bu farklı hata: parola/UPN yanlış. App password ile dene.
Yazıcı uzun "Connecting" sonrası timeout — port 25 kapalı mı?
Çoğu ISP outbound port 25'i blokar. Connector + 25 kullanmak yerine 587 + auth ile alternatif yapı kur.
SMTP relay kurulum + Connector setup için bize ulaşın → Yazıcı/uygulama mail gönderim danışmanlığı.