Windows Server 2022'de Group Policy (GPO) ile Kurumsal Güvenlik Yapılandırması: Adım Adım Rehber

Windows Server 2022'de Group Policy (GPO) ile Kurumsal Güvenlik Yapılandırması: Adım Adım Rehber

Windows Server 2022'de Group Policy (GPO) ile Kurumsal Güvenlik Yapılandırması: Adım Adım Rehber

Posted on Kasım 07, 2026 by Şaban ÇİÇEK

Windows Server 2022'de Group Policy (GPO) ile Kurumsal Güvenlik Yapılandırması: Adım Adım Rehber

Windows Server 2022 ve Active Directory ortamında Group Policy kullanarak USB depolama aygıtlarını kısıtlama, ekran kilidi uygulama, Microsoft Defender ve Windows Firewall güvenliğini yönetme, parola politikaları oluşturma ve PowerShell ile GPO doğrulama işlemlerini uygulamalı olarak inceleyeceğiz.

Yazar: Şaban Çiçek | Kategori: Windows Server, Active Directory, Siber Güvenlik

1. Group Policy (GPO) Nedir?

Group Policy, Active Directory etki alanındaki kullanıcı ve bilgisayarların yapılandırmalarını merkezi olarak yönetmemizi sağlayan Windows Server özelliğidir.

GPO sayesinde yüzlerce bilgisayarda tek tek işlem yapmak yerine, belirlediğimiz güvenlik politikalarını merkezi olarak uygulayabiliriz.

  • USB depolama aygıtlarının kullanımını kısıtlama
  • Bilgisayar ekranlarının otomatik kilitlenmesi
  • Microsoft Defender güvenlik ayarları
  • Windows Firewall kurallarının merkezi yönetimi
  • Parola ve hesap kilitleme politikaları
  • PowerShell ve güvenlik olaylarının kaydedilmesi
  • Yazılım ve kullanıcı yapılandırmalarının yönetimi
Bilgi: Group Policy ayarları Site, Domain ve Organizational Unit (OU) seviyelerinde uygulanabilir. GPO işleme sırasında bağlantı sırası, kalıtım, güvenlik filtrelemesi ve WMI filtreleri dikkate alınır.

2. Laboratuvar Ortamı ve Gereksinimler

Bu makalede örnek olarak aşağıdaki Active Directory ortamını kullanacağız.

BileşenDeğer
İşletim SistemiWindows Server 2022
Domainsabancicek.local
Domain ControllerDC01.sabancicek.local
İstemciWindows 11 Pro / Enterprise
Yönetim AracıGroup Policy Management Console
PowerShellWindows PowerShell 5.1

Domain Controller üzerinde Group Policy Management Console'u açmak için:

gpmc.msc

Gerekli yönetim bileşenlerini kontrol etmek için:

Get-WindowsFeature GPMC

Kurulu değilse:

Install-WindowsFeature GPMC
Dikkat: Bu rehberdeki politikaları doğrudan bütün bilgisayarlara uygulamayın. Öncelikle ayrı bir test OU'su ve pilot bilgisayar grubu oluşturun.

3. Active Directory OU Yapılandırması

Güvenlik politikalarını doğru hedeflere uygulayabilmek için Organizational Unit yapısını planlamalıyız.

Örnek OU yapımız:

sabancicek.local
|
+-- Kurumsal
    |
    +-- Bilgisayarlar
    |   +-- Pilot
    |   +-- Uretim
    |
    +-- Kullanicilar
        +-- Pilot
        +-- Personel

Active Directory Users and Computers konsolunu açalım:

dsa.msc

OU'ları grafik arayüzden oluşturabileceğimiz gibi PowerShell ile de oluşturabiliriz.

Import-Module ActiveDirectory

$domain = "DC=sabancicek,DC=local"

New-ADOrganizationalUnit `
  -Name "Kurumsal" `
  -Path $domain

New-ADOrganizationalUnit `
  -Name "Bilgisayarlar" `
  -Path "OU=Kurumsal,$domain"

New-ADOrganizationalUnit `
  -Name "Pilot" `
  -Path "OU=Bilgisayarlar,OU=Kurumsal,$domain"

New-ADOrganizationalUnit `
  -Name "Uretim" `
  -Path "OU=Bilgisayarlar,OU=Kurumsal,$domain"

New-ADOrganizationalUnit `
  -Name "Kullanicilar" `
  -Path "OU=Kurumsal,$domain"

New-ADOrganizationalUnit `
  -Name "Pilot" `
  -Path "OU=Kullanicilar,OU=Kurumsal,$domain"

New-ADOrganizationalUnit `
  -Name "Personel" `
  -Path "OU=Kullanicilar,OU=Kurumsal,$domain"

Oluşturulan OU'ları kontrol edelim:

Get-ADOrganizationalUnit -Filter * |
Select-Object Name,DistinguishedName

Test bilgisayarlarını ilgili Pilot OU'suna taşıdıktan sonra GPO bağlantılarını oluşturacağız.

4. Güvenlik GPO'su Oluşturma

ADIM 1

Group Policy Management konsolunu açalım:

gpmc.msc

İlgili OU üzerinde sağ tıklayarak Create a GPO in this domain, and Link it here seçeneğini kullanalım.

Oluşturacağımız GPO adı:

GPO-Kurumsal-Bilgisayar-Guvenligi

Aynı işlemi PowerShell üzerinden gerçekleştirebiliriz:

Import-Module GroupPolicy

$gpoName = "GPO-Kurumsal-Bilgisayar-Guvenligi"

New-GPO -Name $gpoName

New-GPLink `
  -Name $gpoName `
  -Target "OU=Pilot,OU=Bilgisayarlar,OU=Kurumsal,DC=sabancicek,DC=local" `
  -LinkEnabled Yes

GPO'nun oluşturulduğunu kontrol edelim:

Get-GPO -Name "GPO-Kurumsal-Bilgisayar-Guvenligi"
Öneri: Üretim ortamında USB, Firewall, Defender ve denetim ayarlarını ayrı GPO'lar olarak yönetmek, sorun giderme ve geri alma işlemlerini kolaylaştırır.

5. GPO ile USB Depolama Aygıtlarını Engelleme

Kurumsal ortamlarda veri sızıntısı riskini azaltmak amacıyla USB depolama aygıtlarının kullanımı sınırlandırılabilir.

ADIM 1

Oluşturduğumuz GPO'ya sağ tıklayarak Edit seçeneğini açalım.

Aşağıdaki yolu takip edelim:

Computer Configuration
  > Policies
    > Administrative Templates
      > System
        > Removable Storage Access

ADIM 2

Aşağıdaki politikayı açalım:

All Removable Storage classes: Deny all access

Değerini Enabled yapalım.

Önemli: Bu ayar yalnızca USB bellekleri değil, Windows'un ilgili çıkarılabilir depolama sınıflarını da etkileyebilir. USB klavye ve fareyi genel olarak engellemek için tasarlanmamıştır. Yine de özel donanımları pilot ortamda test edin.

USB politikasını doğrulama

İstemci bilgisayarda yönetici yetkisiyle:

gpupdate /force

Ardından ilgili kayıt defteri değerini kontrol edelim:

Get-ItemProperty `
  -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\RemovableStorageDevices" `
  -Name Deny_All `
  -ErrorAction SilentlyContinue

Politika uygulandıysa Deny_All değerinin 1 olması beklenir.

USB bellek takarak erişim testini gerçekleştirebiliriz.

Güvenlik notu: Bu politika tek başına kapsamlı veri sızıntısı önleme (DLP) çözümü değildir. Bluetooth, bulut depolama ve diğer veri aktarım kanalları ayrıca değerlendirilmelidir.

6. GPO ile Otomatik Ekran Kilidi Yapılandırması

Çalışanların bilgisayarlarını kilitlemeden masalarından ayrılması, yetkisiz erişim riskini artırır.

Bu nedenle belirli süre kullanılmayan bilgisayarların otomatik kilitlenmesini sağlayabiliriz.

GPO düzenleyicisinde:

Computer Configuration
  > Policies
    > Windows Settings
      > Security Settings
        > Local Policies
          > Security Options

Şu politikayı bulalım:

Interactive logon: Machine inactivity limit

Değeri:

900 seconds

900 saniye = 15 dakika.

Bu ayar, desteklenen Windows istemcilerinde belirlenen hareketsizlik süresinin ardından oturumun kilitlenmesini sağlar.

PowerShell ile kontrol

Get-ItemProperty `
  -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
  -Name InactivityTimeoutSecs

Beklenen değer:

InactivityTimeoutSecs : 900
Bilgi: Bu ayar ekran koruyucunun başlama süresiyle aynı şey değildir. Oturum kilitleme davranışını ayrıca kontrol eder.

7. Microsoft Defender Güvenlik Politikaları

Microsoft Defender Antivirus, Windows istemcilerinde zararlı yazılımlara karşı temel koruma bileşenlerinden biridir.

GPO üzerinden gerçek zamanlı koruma, tarama ve bazı güvenlik davranışlarını merkezi olarak yönetebiliriz.

İlgili GPO içerisinde:

Computer Configuration
  > Policies
    > Administrative Templates
      > Windows Components
        > Microsoft Defender Antivirus

Gerçek zamanlı koruma

Aşağıdaki bölümü açalım:

Microsoft Defender Antivirus
  > Real-time Protection

Turn off real-time protection politikasını Disabled olarak yapılandıralım.

Burada politika isminin olumsuz olduğuna dikkat etmeliyiz. "Turn off" ayarını Disabled yapmak, gerçek zamanlı korumanın kapatılmasını engelleme yönünde bir yapılandırmadır.

PowerShell ile Defender durumunu kontrol etme

Get-MpComputerStatus |
Select-Object `
  AMServiceEnabled,
  AntivirusEnabled,
  RealTimeProtectionEnabled,
  AntivirusSignatureLastUpdated

Defender tercihlerini görüntülemek için:

Get-MpPreference |
Select-Object DisableRealtimeMonitoring,
              DisableBehaviorMonitoring,
              DisableIOAVProtection
Dikkat: Üçüncü taraf antivirüs veya EDR kullanılan bilgisayarlarda Defender'ın çalışma modu farklı olabilir. Tamper Protection ve merkezi güvenlik yönetimi bazı GPO ayarlarının değiştirilmesini engelleyebilir. GPO'nun oluşturulması, korumanın mutlaka etkinleştiği anlamına gelmez.

8. Windows Defender Firewall Yapılandırması

Windows Firewall, istemcilerin ağ bağlantılarını kontrol etmek ve yetkisiz bağlantı girişimlerini azaltmak için önemli bir güvenlik katmanıdır.

GPO içerisinde aşağıdaki bölümü açalım:

Computer Configuration
  > Policies
    > Windows Settings
      > Security Settings
        > Windows Defender Firewall
          with Advanced Security

Windows Defender Firewall Properties bölümüne girelim.

Domain Profile için önerilen başlangıç yapılandırması:

AyarDeğer
Firewall StateOn
Inbound ConnectionsBlock (default)
Outbound ConnectionsAllow (default)

Bu ayarlar uygulanmadan önce uzaktan yönetim, uygulama sunucuları ve gerekli servisler için güvenlik duvarı kuralları değerlendirilmelidir.

Firewall durumunu doğrulama

Get-NetFirewallProfile |
Format-Table Name,Enabled,DefaultInboundAction,DefaultOutboundAction

Etkin güvenlik duvarı kurallarını listelemek için:

Get-NetFirewallRule -Enabled True |
Select-Object DisplayName,Direction,Action |
Out-GridView
Uyarı: RDP veya diğer uzaktan yönetim servislerinin erişimini engelleyecek kuralları, konsol erişimi ve geri dönüş planı olmadan uygulamayın.

9. Domain Parola ve Hesap Kilitleme Politikaları

Active Directory güvenliğinin temel bileşenlerinden biri parola ve hesap kilitleme politikalarıdır.

Örnek başlangıç politikası:

PolitikaÖrnek Değer
Minimum parola uzunluğu14 karakter
Parola geçmişi24 parola
Parola karmaşıklığıEnabled
Hesap kilitleme eşiği10 başarısız deneme
Kilitleme süresi15 dakika
Kilitleme sayacını sıfırlama15 dakika

Bu değerler örnektir; kurumun güvenlik politikası, parola yönetimi ve hesap kilitleme risklerine göre belirlenmelidir.

Kritik bilgi: Domain kullanıcı hesaplarının varsayılan parola ve kilitleme politikaları, rastgele bir kullanıcı OU'suna bağlanan GPO ile değiştirilmez. Varsayılan domain hesap politikası, domain köküne bağlı uygun GPO üzerinden yönetilir. Farklı kullanıcı gruplarına farklı parola politikaları uygulamak için Fine-Grained Password Policy kullanılabilir.

Mevcut domain parola politikasını görüntüleme

Import-Module ActiveDirectory

Get-ADDefaultDomainPasswordPolicy |
Format-List *

PowerShell ile varsayılan domain parola politikasını değiştirme

Aşağıdaki komut yalnızca yetkili yönetici tarafından, mevcut politika ve etkileri kontrol edildikten sonra çalıştırılmalıdır:

Set-ADDefaultDomainPasswordPolicy `
  -Identity "sabancicek.local" `
  -MinPasswordLength 14 `
  -PasswordHistoryCount 24 `
  -ComplexityEnabled $true `
  -LockoutThreshold 10 `
  -LockoutDuration "00:15:00" `
  -LockoutObservationWindow "00:15:00"

Bu komut varsayılan domain parola politikasını doğrudan değiştirir; ayrı bir OU GPO'su oluşturmaz.

Sonucu doğrulayalım:

Get-ADDefaultDomainPasswordPolicy |
Select-Object MinPasswordLength,
              PasswordHistoryCount,
              ComplexityEnabled,
              LockoutThreshold,
              LockoutDuration,
              LockoutObservationWindow

10. PowerShell Güvenlik Kayıtlarını Etkinleştirme

PowerShell kullanımı, sistem yönetimi açısından önemli olduğu kadar güvenlik izleme açısından da önemlidir.

Script Block Logging sayesinde PowerShell tarafından işlenen komut bloklarının bir bölümünü olay günlüklerinde inceleyebiliriz.

GPO içerisinde:

Computer Configuration
  > Policies
    > Administrative Templates
      > Windows Components
        > Windows PowerShell

Turn on PowerShell Script Block Logging politikasını Enabled yapalım.

Gerekli görülürse Turn on Module Logging politikası da yapılandırılabilir.

PowerShell olaylarını kontrol etme

Get-WinEvent `
  -FilterHashtable @{
    LogName = "Microsoft-Windows-PowerShell/Operational"
    Id = 4104
  } `
  -MaxEvents 20 |
Select-Object TimeCreated,Id,Message

Event ID 4104, Script Block Logging olaylarını incelemek için kullanılır.

Gizlilik ve güvenlik: PowerShell günlükleri bazı komut parametrelerini ve hassas içerikleri kaydedebilir. Günlüklere erişim sınırlandırılmalı, saklama süreleri ve merkezi log toplama politikaları planlanmalıdır.

11. GPO Uygulama ve Doğrulama İşlemleri

GPO yapılandırmalarını tamamladıktan sonra en önemli aşama, politikaların istemci bilgisayarlara gerçekten uygulanıp uygulanmadığını kontrol etmektir.

Grup politikalarını güncelleme

gpupdate /force

Bu komut bilgisayar ve kullanıcı politikalarını yeniden işlemeye zorlar. Bazı ayarlar yeniden başlatma veya oturum kapatma gerektirebilir.

Uygulanan GPO'ları görüntüleme

gpresult /r

HTML rapor oluşturmak için:

gpresult /h C:\Windows\Temp\GPO-Rapor.html /f

Raporu açalım:

Start-Process "C:\Windows\Temp\GPO-Rapor.html"

PowerShell ile GPO raporu oluşturma

GroupPolicy modülü bulunan yönetim bilgisayarında:

Get-GPOReport `
  -Name "GPO-Kurumsal-Bilgisayar-Guvenligi" `
  -ReportType Html `
  -Path "C:\Windows\Temp\GPO-Guvenlik.html"

Bu rapor GPO'nun yapılandırmasını gösterir. Bir istemciye gerçekten hangi ayarların uygulandığını belirlemek için gpresult veya Resultant Set of Policy kullanılmalıdır.

GPO bağlantılarını kontrol etme

Get-GPInheritance `
  -Target "OU=Pilot,OU=Bilgisayarlar,OU=Kurumsal,DC=sabancicek,DC=local"

Bu komut OU seviyesindeki GPO bağlantılarını ve kalıtım bilgilerini görüntüler.

12. GPO Uygulanmıyor: Sorun Giderme

Group Policy yapılandırmalarında en sık karşılaşılan sorunlardan biri, GPO'nun oluşturulmasına rağmen istemci bilgisayara uygulanmamasıdır.

12.1 DNS yapılandırmasını kontrol edin

ipconfig /all

İstemci bilgisayarın DNS sunucusu, Active Directory DNS kayıtlarını çözebilen uygun bir DNS sunucusuna işaret etmelidir.

12.2 Domain Controller erişimini kontrol edin

nltest /dsgetdc:sabancicek.local

12.3 SYSVOL erişimini kontrol edin

Test-Path "\\sabancicek.local\SYSVOL"

Sonucun True olması beklenir.

12.4 Grup politikası olaylarını inceleyin

Get-WinEvent `
  -LogName "Microsoft-Windows-GroupPolicy/Operational" `
  -MaxEvents 30 |
Select-Object TimeCreated,Id,LevelDisplayName,Message

12.5 Domain Controller sağlık kontrolü

Domain Controller üzerinde:

dcdiag /q

Replikasyon durumunu kontrol etmek için:

repadmin /replsummary

12.6 GPO filtrelerini kontrol edin

GPO uygulanmıyorsa aşağıdaki noktaları inceleyin:

  • Bilgisayar veya kullanıcı doğru OU içerisinde mi?
  • GPO bağlantısı etkin mi?
  • Computer Configuration veya User Configuration devre dışı mı?
  • Security Filtering doğru yapılandırılmış mı?
  • Hedef hesabın gerekli Read ve Apply Group Policy izinleri var mı?
  • WMI filtresi varsa hedef bilgisayarda koşul sağlanıyor mu?
  • Üst OU veya domain seviyesindeki başka bir GPO ayarı geçersiz kılıyor mu?

13. GPO Yedekleme ve Geri Yükleme

Kurumsal ortamlarda GPO değişikliklerinden önce yedek almak önemlidir.

Tek bir GPO'yu yedekleme

Backup-GPO `
  -Name "GPO-Kurumsal-Bilgisayar-Guvenligi" `
  -Path "D:\GPOBackup"

Yedekleme klasörü önceden oluşturulmalıdır:

New-Item `
  -Path "D:\GPOBackup" `
  -ItemType Directory `
  -Force

Tüm GPO'ları yedekleme

Backup-GPO -All -Path "D:\GPOBackup"

GPO geri yükleme

Restore-GPO `
  -Name "GPO-Kurumsal-Bilgisayar-Guvenligi" `
  -Path "D:\GPOBackup"
Önemli: Restore-GPO, mevcut GPO'nun ayarlarını yedekten geri yükleyebilir ve son değişiklikleri kaybettirebilir. Ayrıca GPO bağlantılarının tamamını geri yükleyen bir OU bağlantı yedeği değildir. İşlem öncesinde yedek kimliği, hedef GPO ve bağlantılar doğrulanmalıdır.

14. Üretim Ortamı İçin Güvenlik Önerileri

GPO ile güvenlik yapılandırması yapılırken yalnızca politikaları etkinleştirmek yeterli değildir. Değişiklik yönetimi ve operasyonel sürdürülebilirlik de önemlidir.

  • Politikaları önce pilot OU üzerinde test edin.
  • Domain Controller ve sunucular için istemcilerden ayrı GPO'lar kullanın.
  • USB, Defender, Firewall ve denetim ayarlarını mantıksal olarak ayırın.
  • GPO değişikliklerinden önce yedek alın.
  • GPO düzenleme yetkilerini yalnızca yetkili yöneticilere verin.
  • Yerel yönetici parolaları için Windows LAPS değerlendirin.
  • Güvenlik olaylarını merkezi bir SIEM veya log yönetim platformuna aktarın.
  • Parola politikalarını MFA, güçlü parola ve kimlik güvenliği stratejileriyle birlikte değerlendirin.
  • Politikaları Microsoft Security Baseline ve kurumun güvenlik gereksinimleriyle karşılaştırın.
  • GPO uygulama sonuçlarını düzenli olarak raporlayın.

GPO envanteri oluşturma

Domain üzerindeki GPO'ları listelemek için:

Get-GPO -All |
Select-Object DisplayName,Id,GpoStatus,ModificationTime |
Sort-Object DisplayName

CSV olarak dışa aktarmak için:

Get-GPO -All |
Select-Object DisplayName,Id,GpoStatus,ModificationTime |
Export-Csv `
  -Path "C:\Windows\Temp\GPO-Envanter.csv" `
  -NoTypeInformation `
  -Encoding UTF8

Bu rapor, GPO envanterinin düzenli kontrol edilmesinde kullanılabilir.

15. Sonuç

Bu makalede Windows Server 2022 üzerinde Active Directory Group Policy kullanarak temel kurumsal güvenlik yapılandırmalarını adım adım inceledik.

USB depolama erişiminin sınırlandırılması, otomatik ekran kilidi, Microsoft Defender, Windows Firewall, parola politikaları ve PowerShell olay kayıtlarının merkezi olarak yönetilmesi; kurumsal Windows ortamlarının güvenliğini artırmaya yardımcı olur.

Ancak başarılı bir Group Policy yönetimi yalnızca GPO oluşturmakla sınırlı değildir. Politikaların doğru OU'lara bağlanması, hedef bilgisayarlarda doğrulanması, düzenli yedeklenmesi ve değişikliklerin kontrollü uygulanması gerekir.

Sonuç: Doğru planlanmış bir GPO mimarisi, çok sayıda Windows bilgisayarın güvenlik ayarlarını merkezi ve tutarlı biçimde yönetmeyi sağlar.

Sık Sorulan Sorular

GPO değişiklikleri hemen uygulanır mı?

Her zaman değil. Grup politikaları arka planda belirli aralıklarla yenilenir. gpupdate /force komutu güncellemeyi tetikler ancak bazı ayarlar yeniden başlatma veya oturum açma gerektirir.

GPO ile USB bellekler engellenebilir mi?

Evet. Removable Storage Access politikalarıyla çıkarılabilir depolama aygıtlarına erişim kısıtlanabilir.

GPO neden bazı bilgisayarlarda çalışmıyor?

Yanlış OU, güvenlik filtrelemesi, WMI filtreleri, DNS, SYSVOL erişimi, replikasyon sorunları veya politika çakışmaları buna neden olabilir.

GPO ile bütün kullanıcılara aynı parola politikası uygulanabilir mi?

Domain hesapları için varsayılan parola politikası domain seviyesinde yönetilir. Farklı kullanıcı grupları için Fine-Grained Password Policy kullanılabilir.

GPO ayarlarını PowerShell ile kontrol edebilir miyim?

Evet. GroupPolicy ve ActiveDirectory modülleriyle GPO envanteri, bağlantılar, yapılandırma raporları ve bazı domain güvenlik ayarları kontrol edilebilir.

Şaban Çiçek

Teknoloji İnsanı

Windows Server | Active Directory | Sistem Yönetimi | Siber Güvenlik

sabancicek.net

28 görüntülenme • 0 Yorum • Son Güncelleme: Kasım 07, 2026
Yorumlar 0
Yorum Yap

Henüz yorum yok. İlk yorumu siz yapın!