DC-DC Düşürücü Voltaj Regülatörü (Buck Converter)
Bu devrenin temel amacı, daha yüksek bir doğru akım (DC) giriş voltajını ...
 
        SIEM (Security Information and Event Management) sistemleri, kurumsal güvenlik altyapısının temel taşlarından biridir. Ancak Windows sunuculardan log toplarken en sık karşılaşılan sorunlardan biri, izin ve erişim problemleridir. Bu yazıda, Windows'da SIEM kullanıcısı için gerekli tüm izinleri PowerShell ile nasıl yapılandıracağınızı ve doğrulayacağınızı detaylı olarak anlatacağım.
SIEM sistemleri Windows sunuculardan veri toplarken şu kaynaklara erişim sağlamalıdır:
Bu erişimlerin her biri farklı izin seviyelerinde yapılandırma gerektirir.
SIEM kullanıcısının öncelikle belirli Windows gruplarında olması gerekir:
# Kullanıcıyı gerekli gruplara ekle $Groups = @( "Performance Monitor Users", "Event Log Readers", "Distributed COM Users" ) foreach ($Group in $Groups) { Add-LocalGroupMember -Group $Group -Member "siem_user" Write-Host "✓ $Group grubuna eklendi" } WMI, Windows sistem bilgilerine programatik erişim sağlar. SIEM sistemleri bu verilere ihtiyaç duyar:
# WMI namespace'lerine erişim izni ver $WmiNamespaces = @("root\cimv2", "root\default", "root\wmi") foreach ($Namespace in $WmiNamespaces) { # Manuel yapılandırma: wmimgmt.msc kullanılması önerilir Write-Host "WMI Namespace: $Namespace yapılandırılıyor..." } Manuel WMI Yapılandırması:
wmimgmt.msc çalıştırınEvent Log'larına erişim için registry seviyesinde izinler gereklidir:
# Event Log registry anahtarlarına erişim izni $EventLogs = @("Application", "System", "Security") foreach ($LogName in $EventLogs) { $RegPath = "HKLM:\SYSTEM\CurrentControlSet\Services\EventLog\$LogName" $Acl = Get-Acl $RegPath $AccessRule = New-Object System.Security.AccessControl.RegistryAccessRule( "COMPUTERNAME\siem_user", "ReadKey", "ContainerInherit,ObjectInherit", "None", "Allow" ) $Acl.SetAccessRule($AccessRule) Set-Acl -Path $RegPath -AclObject $Acl Write-Host "✓ $LogName Event Log izni verildi" } DCOM izinleri, uzak WMI erişimi için kritiktir:
# DCOM Component Services yapılandırması # Manuel yapılandırma gerekli: dcomcnfg.exe Manuel DCOM Yapılandırması:
dcomcnfg.exe çalıştırınUzak erişim için WinRM'in doğru yapılandırılması gerekir:
# WinRM temel yapılandırması winrm quickconfig -y winrm set winrm/config/service '@{AllowUnencrypted="true"}' winrm set winrm/config/service/auth '@{Basic="true"}' # Listener kontrolü winrm enumerate winrm/config/listener # Servis durumu kontrolü Get-Service WinRM | Start-Service Tüm bu işlemleri otomatikleştiren kapsamlı bir PowerShell script'i:
param($SiemUsername) $TestResults = @() # Grup üyeliklerini test et $Groups = @("Performance Monitor Users", "Event Log Readers", "Distributed COM Users") foreach ($Group in $Groups) { $Members = Get-LocalGroupMember -Group $Group if ($Members.Name -contains "$env:COMPUTERNAME\$SiemUsername") { $TestResults += "✓ $Group: BAŞARILI" } else { $TestResults += "✗ $Group: BAŞARISIZ" } } # WMI erişim testi try { Get-WmiObject -Class Win32_ComputerSystem | Out-Null $TestResults += "✓ WMI Erişim: BAŞARILI" } catch { $TestResults += "✗ WMI Erişim: BAŞARISIZ" } # Event Log testi try { Get-WinEvent -LogName Application -MaxEvents 1 | Out-Null $TestResults += "✓ Event Log: BAŞARILI" } catch { $TestResults += "✗ Event Log: BAŞARISIZ" } # WinRM testi $WinRMTest = Test-NetConnection -ComputerName localhost -Port 5985 -WarningAction SilentlyContinue if ($WinRMTest.TcpTestSucceeded) { $TestResults += "✓ WinRM: BAŞARILI" } else { $TestResults += "✗ WinRM: BAŞARISIZ" } # Sonuçları göster Write-Host "Test Sonuçları:" -ForegroundColor Cyan $TestResults | ForEach-Object { Write-Host $_ }
   
Yapılandırma sonrası mutlaka test edilmelidir:
# 1. Grup üyeliklerini kontrol et Get-LocalGroupMember -Group "Performance Monitor Users" Get-LocalGroupMember -Group "Event Log Readers" Get-LocalGroupMember -Group "Distributed COM Users" # 2. WMI erişim testi Get-WmiObject -Class Win32_ComputerSystem Get-WmiObject -Class Win32_Service | Select-Object -First 5 # 3. Event Log erişim testi Get-WinEvent -LogName Application -MaxEvents 5 Get-WinEvent -LogName System -MaxEvents 5 # 4. WinRM bağlantı testi Test-NetConnection -ComputerName localhost -Port 5985 winrs -r:localhost -u:siem_user cmd # 5. Credential ile test $Credential = Get-Credential "COMPUTERNAME\siem_user" Get-WmiObject -Class Win32_ComputerSystem -Credential $Credential Test sürecini otomatikleştiren doğrulama script'i:
param($SiemUsername) $TestResults = @() # Grup üyeliklerini test et $Groups = @("Performance Monitor Users", "Event Log Readers", "Distributed COM Users") foreach ($Group in $Groups) { $Members = Get-LocalGroupMember -Group $Group if ($Members.Name -contains "$env:COMPUTERNAME\$SiemUsername") { $TestResults += "✓ $Group: BAŞARILI" } else { $TestResults += "✗ $Group: BAŞARISIZ" } } # WMI erişim testi try { Get-WmiObject -Class Win32_ComputerSystem | Out-Null $TestResults += "✓ WMI Erişim: BAŞARILI" } catch { $TestResults += "✗ WMI Erişim: BAŞARISIZ" } # Event Log testi try { Get-WinEvent -LogName Application -MaxEvents 1 | Out-Null $TestResults += "✓ Event Log: BAŞARILI" } catch { $TestResults += "✗ Event Log: BAŞARISIZ" } # WinRM testi $WinRMTest = Test-NetConnection -ComputerName localhost -Port 5985 -WarningAction SilentlyContinue if ($WinRMTest.TcpTestSucceeded) { $TestResults += "✓ WinRM: BAŞARILI" } else { $TestResults += "✗ WinRM: BAŞARISIZ" } # Sonuçları göster Write-Host "Test Sonuçları:" -ForegroundColor Cyan $TestResults | ForEach-Object { Write-Host $_ } Çözüm: DCOM izinlerini manuel kontrol edin
dcomcnfg.exe # Windows Management Instrumentation → Security → Launch and Activation Permissions Çözüm: Registry izinlerini kontrol edin
$RegPath = "HKLM:\SYSTEM\CurrentControlSet\Services\EventLog\Security" Get-Acl $RegPath | Format-List Çözüm: Güvenlik duvarı ve servis durumunu kontrol edin
Get-Service WinRM Get-NetFirewallRule -DisplayName "*WinRM*" netstat -an | findstr :5985 Çözüm: DCOM timeout değerlerini artırın
# Registry: HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{APPID} # RemoteServerName ve AuthenticationLevel değerlerini kontrol edin SIEM kullanıcısı için güvenlik best practices:
# Sadece gerekli izinleri verin # Administrator grubuna eklemeyin # Gerekli olmayan servislere erişim vermeyin # Karmaşık parola kullanın # Düzenli parola değişimi # Service account olarak işaretleyin # SIEM kullanıcısının aktivitelerini izleyin # Başarısız giriş denemelerini loglanın # Yetkisiz erişim girişimlerini tespit edin # HTTPS/SSL kullanın (Port 5986) winrm create winrm/config/Listener?Address=*+Transport=HTTPS # Unencrypted bağlantıları sınırlandırın winrm set winrm/config/service '@{AllowUnencrypted="false"}' Windows'da SIEM entegrasyonu için kullanıcı izinlerini doğru yapılandırmak kritiktir. Bu rehberde:
Bu adımları takip ederek, SIEM sisteminizin Windows sunuculardan güvenilir ve kesintisiz veri toplamasını sağlayabilirsiniz. Önemli Hatırlatma: Yapılandırma sonrası mutlaka sistemi yeniden başlatın ve tüm testleri tekrarlayın. SIEM entegrasyonunda güvenlik ve işlevsellik dengesini korumak için düzenli olarak izinleri gözden geçirin.
Bu rehber, Windows Server 2016/2019/2022 ve Windows 10/11 işletim sistemleri için geçerlidir. Farklı SIEM çözümlerinin kendine özgü gereksinimleri olabileceğini unutmayın.