Windows Server 2025 OSConfig yazımızda sizlere 2025 ile beraber gelen OSConfig özelliğini inceleceğiz. Windows Server 2025 ile yenilikler gelmiştir. Bu yeniliklerden bir taneside OSConfig’dir. OSConfig ile beraber Security Baseline uygulamak daha basit hale gelmektedir. GPO kullanmadan local olarak Security Baseline’ları uygulama fırsatı sunmaktadır. Özellikle Golden Imajları çok pratik hale getirmektedir. Bu yazımızda Özellikleri Domain Controller’a uygulayarak , customizasyon nasıl yapılır bunu göstereceğiz. İlk olarak OSConfig Modulünün yüklenmesinden başlayacağız.
OSConfig Yüklenmesi
OSConfig aslında bir modül olarak yüklenmektedir. Online olarak yüklemek için Powershell üzerinden komut çalıştırılır.
Install-Module -Name Microsoft.OSConfig -Scope AllUsers -Repository PSGallery -Force
On-Premise sistemler için kurulum için ise aşağıdaki gibi yüklemekteyiz.
Öncellikle paketimizi indirmek için linki kullanabiliriz. Manuel download bölümünden indireceğiz.
İndirilen nupkg uzantılı paketimizi zip uzantısına çevirip dışarı çıkarıyoruz.


Zip’den çıkarılan paketimizi Microsoft.OSConfig olarak rename ederek “C:\Program Files\WindowsPowerShell\Modules” altına kopyalıyoruz.

Şimdi paketimizi kontrol edelim.
Get-Module Microsoft.OSConfig

Bundan sonra kullanabileceğimiz komutlara veya functionlara bakalım.
Get-Command -Module Microsoft.OSConfig

Şimdi OSConfig önemli özelliklerinden birine gelelim. Peki bu dakikadan sonra neler uygulanabilir veya nasıl kontrol edilebilir. İndirdiğimiz modül içerisinde kontrol sağlayabileceğimiz tüm Security Baseline , Secure Core ve Defender Antivirus gibi kontrolleri sağlayabiliriz.

Şimdi bu testlerimizi Domain Controller için yapmaya başlayalım. Öncellikle bizlerde neler uygulandı hangileri compliant veya değil kontrol etmek için ;
Get-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/DomainController | ft Name, @{ Name = "Status"; Expression={$_.Compliance.Status} }, @{ Name = "Reason"; Expression={$_.Compliance.Reason} } -AutoSize -Wrap
SecurityBaseline/WS2025/DomainController bunu aslında SD de bulunan bölümden yazdık. Tüm sonuçları aşağıdaki gibi görmeye başladık. Komuta ayrıca Description’da eklediğinizde açık bir şekilde hangi ayarın olduğunu görmekteyiz.

Bu görünüm bizler için daha rahat anlaşır gözükmektedir.

Sıra geldi OSConfig en güzel özelliklerinden birin, bu ayarları ortama uygulayabilirmiyiz. Evet. Hemde tek bir komut ile;
Set-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/DomainController -Default
Uyguladıktan sonra makinemize restart atacağız ve değişiklikler işleyecektir.

Restart sonrası kontrollerimizi sağlayalım.
Get-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/DomainController | ft Name, @{ Name = "Status"; Expression={$_.Compliance.Status} }, @{ Name = "Reason"; Expression={$_.Compliance.Reason} } -AutoSize -Wrap
Komutumuzun çıktısında artık ayarlarımızın compliant olduğunu görmekteyiz. Bazı ayarlar noncompliant olabilmektedir. Logon text, Administrator,Guest rename gibi bu ayarları giriş yapmak gerekecektir.

Tabiki ayarları tek-tek set etme imkanımızda bulunmaktadır. Örnek olarak
Set-OSConfigDesiredConfiguration -Scenario SecurityBaseline\WS2025\DomainController -Setting RequireCaseInsensitivityForNonWindowsSubsystems -Value 0
Şimdi WS2025 Domain Controller Security Baseline uygulamış olduk. Peki kontrol mekanizması nasıl işlemektedir. Bir güzel özellikte burda ortaya çıkmaktadır.
OSConfigDriftControl
Şimdi ayarları kontroller ettiğimizde RefreshPeriod gözükmektedir. Bu nedir ve ne iş yapmaktadır ?

Reflesh period aslında bizim kontrol mekanizmamızın zamanlaması, yani default olarak 4 saatte bir kontrol edilerek eğer ayar değiştiyse tekrardan baseline döndürmektir. Bu refleshi task schedule üzerinden sağlamaktadır. Task schedule kontrol ettiğimizde Microsoft>Windows>EnterpriseMgmt altında id ile beraber task görmekteyiz. Ekranda görüldüğü gibi 4 saatte bir çalışmaktadır.

Bu süreyi set edebilmekteyiz. Şimdi bir ayar değiştirdiğimizde 40 dakika içerisinde tekrar OSConfig’de uyguladığımız ayara dönecektir. Bu kontrolleri OSDriftControl olarak adlandırılmaktadır.
Set-OSConfigDriftControl -RefreshPeriod 40

Bu kontrolü sağlarken kullandığı mekanizma Raw >Cooked>Applied Flows olarak bilinmektedir. Bu mekanizmayı açıklamak gerekirse;
Regedit üzerinde tüm data “Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DeclaredConfiguration\HostOS\Config\enrollments\” üzerinden cooked ve raw data olarak bulunmaktadır. RAW data bizlere process edilmemiş ham datayı göstermektedir. Daha sonrası sistem bu raw dataları alarak yorumlanabilir şekle alarak cooked(pişmiş) duruma getirmektedir. Cooked data sistemin mevcut durumu ile kontrol edilmektedir ve sapma tespit edilirse işaretlenir. Daha sonra işaretlenen bu sapmalar düzeltilmektedir.

Tüm metadata yine regedit’de açıklama ile beraber “Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OSConfig\Metadata\” path’de bulunmaktadır.

Ayrıca yeni konfigurasyon veya baseline applied edildiğinde “Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OSConfig\Metadata\” altında xml olarak bulunmaktadır.

Sonuç olarak Windows Server 2025 OSConfig güçlü bir tool olarak sunucularımızın baseline uyumluluğunu sağlaması açısından önemlidir. Önemli nokta test ortamlarında test edilmedikçe production ortama geçirilmemesidir. Baseline özelinde bir çok güvenlik sıkılaştırması yapılmaktadır.
Diğer yazılarımı aşağıdaki kategorilerden takip edebilirsiniz.
- Active Directory (87)
- ADFS (7)
- Azure (12)
- Cyber Security (6)
- Exchange (1)
- Group Policy (20)
- MIM/FIM (26)
- Orchestrator (5)
- Power BI (5)
- Powershell (13)
- SCCM (19)
- SCOM (8)
- SCVMM (9)
- SQL (5)
- Uncategorized (4)
- Windows (10)