Windows Server 2025 Delegated Managed Service Accounts (dMSA) Kurulum ve Parolasız Servis Yönetim Rehberi
Windows Server 2025 ile gelen Delegated Managed Service Accounts (dMSA) mimarisi ile servis hesaplarında parola kullanımını tamamen sonlandırma, Kerberos bilet yetkilendirmesi, gMSA dan dMSA ya geçiş ve Active Directory PowerShell yönetim adımları.
AuditAgent™ Kod & Mimari Doğrulaması
Güven Skoru: %100AuditAgent Onaylı (Windows Server 2025 dMSA Validated)
Uygulama Önkoşulları & Gereksinimler
Giriş: dMSA Nedir ve Neden gMSA Yerine Tercih Edilmelidir?
Kurumsal Active Directory ortamlarında arka plan servisleri ve zamanlanmış görevler (Scheduled Tasks) için kullanılan geleneksel kullanıcı hesapları, unutulan parolalar veya süresi dolmayan (Password Never Expires) şifreler nedeniyle **Kerberoasting** ve yetki yükseltme saldırılarının başlıca hedefiydi. Group Managed Service Accounts (gMSA) bu sorunu kısmen çözse de tek bir sunucuya özel kimlik delegasyonu ve karmaşık KDS Root Key gereksinimleri yönetim zorluğu yaratıyordu.
**Windows Server 2025 Delegated Managed Service Accounts (dMSA)**; servis hesaplarında parola kavramını %100 ortadan kaldırarak **makine kimliğine bağlı (Device-bound / Kerberos PAC-backed)** otomatik yetkilendirme sağlar. dMSA sayesinde servis hesabı yalnızca atanmış sunucu üzerinde çalışabilir ve sunucu dışından hiçbir saldırgan tarafından biletleri taklit edilemez.
Deployment Configuration
Select the deployment operation for this Domain Controller
---
1. Adım: Active Directory Forest Functional Level ve Schema Genişletme
dMSA mimarisinin çalışabilmesi için Domain Functional Level minimum **Windows Server 2025** olmalı veya ilgili dMSA şema nesneleri (`msDS-DelegatedManagedServiceAccount`) etki alanına yüklenmelidir:
| 1 | # 1. Active Directory Şema Sürümünü ve dMSA Desteğini Doğrulayın |
| 2 | Import-Module ActiveDirectory |
| 3 | Get-ADForest | Select-Object ForestMode, SchemaMaster |
| 4 | |
| 5 | # 2. dMSA Konteynerini Oluşturun |
| 6 | New-ADObject -Name "Delegated Managed Service Accounts" -Type "container" -Path (Get-ADDomain).DistinguishedName |
---
2. Adım: PowerShell ile Yeni dMSA Hesabı Oluşturma ve Sunucuya Yetki Atama
Finans SQL servisi için yalnızca `SQL-SRV01` sunucusunda çalışabilecek parolasız dMSA hesabı:
| 1 | # dMSA Hesabını Oluşturun ve Hedef Sunucuya Delegasyon Tanımlayın |
| 2 | New-ADDelegatedManagedServiceAccount -Name "dmsa_sql_svc" ` |
| 3 | -DNSHostName "dmsa-sql.corp.local" ` |
| 4 | -PrincipalsAllowedToRetrieveManagedPassword (Get-ADComputer "SQL-SRV01") ` |
| 5 | -ServicePrincipalNames "MSSQLSvc/SQL-SRV01.corp.local:1433" |
| 6 | |
| 7 | Write-Host "[OK] dMSA Hesabı 'dmsa_sql_svc' Başarıyla Oluşturuldu ve SQL-SRV01'e Bağlandı." -ForegroundColor Green |
---
3. Adım: İstemci Sunucu Üzerinde dMSA Hesabının Kurulması ve Servise Bağlanması
`SQL-SRV01` sunucusuna bağlanarak dMSA hesabını sisteme tanıtın:
| 1 | # 1. dMSA Hesabını Yerel Sunucuya Yükleyin |
| 2 | Install-ADServiceAccount -Identity "dmsa_sql_svc" |
| 3 | |
| 4 | # 2. Hesabın Çalışma ve Kerberos Bilet Durumunu Test Edin |
| 5 | Test-ADServiceAccount -Identity "dmsa_sql_svc" # Çıktı: True Olmalıdır |
| 6 | |
| 7 | # 3. Windows Servisini dMSA ile Başlatacak Şekilde Yapılandırın |
| 8 | sc.exe config "MSSQLSERVER" obj= "CORP\dmsa_sql_svc$" password= "" |
| 9 | Restart-Service "MSSQLSERVER" -Force |
---
4. Adım: Güvenlik Denetimi ve Olay Günlüğü Doğrulaması
Domain Controller ve SQL sunucusu üzerinde **Security** günlüğünde incelenecek olaylar: - **Event ID 4738 (A user account was modified):** dMSA nesnesi için parola alanı `Null/None` olarak işaretlenir. - **Event ID 4624 (Logon Type 5 - Service):** dMSA ile parolasız başarılı servis oturumu doğrulanır.
Bu Makaleyle İlgili Bir Sorunuz mu Var?
Uygulama esnasında aldığınız hata kodlarını veya logları forumda paylaşarak TriageAgent ve topluluktan anında destek alın.