Windows Server Yönetimi ve Active Directory

Windows Server ortamlarının kurulumu, Active Directory yapılandırması ve sistem yönetimi. Enterprise Windows altyapısı için kapsamlı rehber.

8 min read
1.441 words

Windows Server Yönetimi ve Active Directory#

Windows Server, enterprise ortamlarında yaygın olarak kullanılan bir sunucu işletim sistemidir. Bu rehberde Windows Server kurulumu, Active Directory yapılandırması ve sistem yönetimi konularını ele alacağız.

Windows Server Nedir?#

Windows Server, Microsoft tarafından geliştirilen enterprise düzeyinde sunucu işletim sistemidir. Ağ hizmetleri, dosya paylaşımı, web servisleri ve veritabanı yönetimi gibi birçok sunucu rolünü destekler.

Windows Server Sürümleri#

  • Standard Edition: Küçük ve orta ölçekli işletmeler için
  • Datacenter Edition: Büyük veri merkezleri ve cloud ortamları için
  • Essentials Edition: 25 kullanıcıya kadar küçük işletmeler için
  • Server Core: GUI olmadan minimal kurulum

Windows Server Kurulumu#

Sistem Gereksinimleri#

Minimum Gereksinimler:

  • 1.4 GHz 64-bit işlemci
  • 512 MB RAM (2 GB Desktop Experience için)
  • 32 GB disk alanı
  • Gigabit Ethernet adaptörü

Önerilen Gereksinimler:

  • Çok çekirdekli işlemci
  • 4 GB+ RAM
  • SSD depolama
  • Redundant ağ adaptörleri

Kurulum Türleri#

1. Desktop Experience (GUI)#

# Kurulum sonrası GUI ekleme Install-WindowsFeature Server-Gui-Mgmt-Infra,Server-Gui-Shell -Restart

2. Server Core#

# Server Core'dan GUI kaldırma Uninstall-WindowsFeature Server-Gui-Mgmt-Infra,Server-Gui-Shell -Restart

İlk Yapılandırma#

# Bilgisayar adını değiştir Rename-Computer -NewName "DC01" -Restart # IP adresi yapılandırması New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 192.168.1.10 -PrefixLength 24 -DefaultGateway 192.168.1.1 Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses 192.168.1.10,8.8.8.8 # Windows Update yapılandırması Install-Module PSWindowsUpdate Get-WUInstall -AcceptAll -AutoReboot

Active Directory Domain Services (AD DS)#

AD DS Kurulumu#

# AD DS rolünü yükle Install-WindowsFeature AD-Domain-Services -IncludeManagementTools # Domain controller'ı yapılandır Install-ADDSForest ` -DomainName "company.local" ` -DomainNetbiosName "COMPANY" ` -SafeModeAdministratorPassword (ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force) ` -InstallDns ` -Force

Domain Controller Ekleme#

# Mevcut domain'e DC ekleme Install-ADDSDomainController ` -DomainName "company.local" ` -Credential (Get-Credential) ` -SafeModeAdministratorPassword (ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force) ` -InstallDns ` -Force

Active Directory Yönetimi#

Organizational Unit (OU) Yönetimi#

# OU oluşturma New-ADOrganizationalUnit -Name "Departments" -Path "DC=company,DC=local" New-ADOrganizationalUnit -Name "IT" -Path "OU=Departments,DC=company,DC=local" New-ADOrganizationalUnit -Name "HR" -Path "OU=Departments,DC=company,DC=local" New-ADOrganizationalUnit -Name "Finance" -Path "OU=Departments,DC=company,DC=local" # OU listeleme Get-ADOrganizationalUnit -Filter * | Select-Object Name,DistinguishedName # OU silme Remove-ADOrganizationalUnit -Identity "OU=OldDept,DC=company,DC=local" -Confirm:$false

Kullanıcı Yönetimi#

# Kullanıcı oluşturma New-ADUser ` -Name "John Doe" ` -GivenName "John" ` -Surname "Doe" ` -SamAccountName "jdoe" ` -UserPrincipalName "[email protected]" ` -Path "OU=IT,OU=Departments,DC=company,DC=local" ` -AccountPassword (ConvertTo-SecureString "TempPass123!" -AsPlainText -Force) ` -Enabled $true ` -ChangePasswordAtLogon $true # Toplu kullanıcı oluşturma $Users = Import-Csv "C:\Users.csv" foreach ($User in $Users) { New-ADUser ` -Name "$($User.FirstName) $($User.LastName)" ` -GivenName $User.FirstName ` -Surname $User.LastName ` -SamAccountName $User.Username ` -UserPrincipalName "$($User.Username)@company.local" ` -Path $User.OU ` -Department $User.Department ` -Title $User.JobTitle ` -AccountPassword (ConvertTo-SecureString $User.Password -AsPlainText -Force) ` -Enabled $true } # Kullanıcı bilgilerini güncelleme Set-ADUser -Identity "jdoe" -Department "IT" -Title "System Administrator" # Kullanıcı şifresini sıfırlama Set-ADAccountPassword -Identity "jdoe" -NewPassword (ConvertTo-SecureString "NewPass123!" -AsPlainText -Force) -Reset Set-ADUser -Identity "jdoe" -ChangePasswordAtLogon $true

Grup Yönetimi#

# Güvenlik grubu oluşturma New-ADGroup -Name "IT Admins" -GroupScope Global -GroupCategory Security -Path "OU=IT,OU=Departments,DC=company,DC=local" # Dağıtım grubu oluşturma New-ADGroup -Name "All Employees" -GroupScope Universal -GroupCategory Distribution -Path "OU=Departments,DC=company,DC=local" # Kullanıcıyı gruba ekleme Add-ADGroupMember -Identity "IT Admins" -Members "jdoe" # Grup üyeliklerini listeleme Get-ADGroupMember -Identity "IT Admins" | Select-Object Name,SamAccountName # Kullanıcının grup üyeliklerini görme Get-ADPrincipalGroupMembership -Identity "jdoe" | Select-Object Name

Group Policy Yönetimi#

Group Policy Object (GPO) Oluşturma#

# GPO oluşturma New-GPO -Name "IT Security Policy" -Comment "Security settings for IT department" # GPO'yu OU'ya bağlama New-GPLink -Name "IT Security Policy" -Target "OU=IT,OU=Departments,DC=company,DC=local" # GPO ayarlarını yapılandırma Set-GPRegistryValue -Name "IT Security Policy" -Key "HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate\AU" -ValueName "NoAutoUpdate" -Type DWord -Value 0

Yaygın GPO Ayarları#

# Şifre politikası Set-GPRegistryValue -Name "Default Domain Policy" -Key "HKLM\System\CurrentControlSet\Services\Netlogon\Parameters" -ValueName "MaximumPasswordAge" -Type DWord -Value 90 # Ekran koruyucu politikası Set-GPRegistryValue -Name "Desktop Policy" -Key "HKCU\Software\Policies\Microsoft\Windows\Control Panel\Desktop" -ValueName "ScreenSaveActive" -Type String -Value "1" Set-GPRegistryValue -Name "Desktop Policy" -Key "HKCU\Software\Policies\Microsoft\Windows\Control Panel\Desktop" -ValueName "ScreenSaveTimeOut" -Type String -Value "900" # Windows Update politikası Set-GPRegistryValue -Name "Update Policy" -Key "HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate\AU" -ValueName "AUOptions" -Type DWord -Value 4

DNS Yönetimi#

DNS Zone Yönetimi#

# Primary zone oluşturma Add-DnsServerPrimaryZone -Name "company.local" -ZoneFile "company.local.dns" # Reverse lookup zone oluşturma Add-DnsServerPrimaryZone -NetworkID "192.168.1.0/24" -ZoneFile "1.168.192.in-addr.arpa.dns" # DNS kayıtları ekleme Add-DnsServerResourceRecordA -ZoneName "company.local" -Name "web" -IPv4Address "192.168.1.100" Add-DnsServerResourceRecordCName -ZoneName "company.local" -Name "www" -HostNameAlias "web.company.local" Add-DnsServerResourceRecordMX -ZoneName "company.local" -Name "." -MailExchange "mail.company.local" -Preference 10 # DNS kayıtlarını listeleme Get-DnsServerResourceRecord -ZoneName "company.local"

DNS Forwarders#

# DNS forwarder ekleme Add-DnsServerForwarder -IPAddress 8.8.8.8,8.8.4.4 # Conditional forwarder ekleme Add-DnsServerConditionalForwarderZone -Name "external.com" -MasterServers 192.168.2.10

DHCP Yönetimi#

DHCP Server Kurulumu#

# DHCP rolünü yükle Install-WindowsFeature DHCP -IncludeManagementTools # DHCP server'ı authorize et Add-DhcpServerInDC -DnsName "dc01.company.local" -IPAddress 192.168.1.10 # DHCP scope oluşturma Add-DhcpServerv4Scope -Name "Main Network" -StartRange 192.168.1.100 -EndRange 192.168.1.200 -SubnetMask 255.255.255.0 # DHCP options ayarlama Set-DhcpServerv4OptionValue -ScopeId 192.168.1.0 -Router 192.168.1.1 Set-DhcpServerv4OptionValue -ScopeId 192.168.1.0 -DnsServer 192.168.1.10 Set-DhcpServerv4OptionValue -ScopeId 192.168.1.0 -DnsDomain "company.local"

DHCP Rezervasyonları#

# MAC adresine göre IP rezervasyonu Add-DhcpServerv4Reservation -ScopeId 192.168.1.0 -IPAddress 192.168.1.50 -ClientId "00-15-5D-00-00-01" -Name "Server01" # Rezervasyonları listeleme Get-DhcpServerv4Reservation -ScopeId 192.168.1.0

File Server Yönetimi#

Paylaşım Oluşturma#

# Klasör oluşturma ve paylaşım New-Item -Path "C:\Shares\Department" -ItemType Directory New-SmbShare -Name "Department" -Path "C:\Shares\Department" -FullAccess "COMPANY\IT Admins" -ReadAccess "COMPANY\Domain Users" # NTFS izinleri ayarlama $Acl = Get-Acl "C:\Shares\Department" $AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("COMPANY\IT Admins","FullControl","ContainerInherit,ObjectInherit","None","Allow") $Acl.SetAccessRule($AccessRule) Set-Acl "C:\Shares\Department" $Acl

DFS (Distributed File System)#

# DFS rolünü yükle Install-WindowsFeature FS-DFS-Namespace,FS-DFS-Replication -IncludeManagementTools # DFS namespace oluşturma New-DfsnRoot -TargetPath "\\dc01\DFSRoot" -Type DomainV2 -Path "\\company.local\Files" # DFS folder ekleme New-DfsnFolder -Path "\\company.local\Files\Departments" -TargetPath "\\fileserver01\Departments"

Backup ve Disaster Recovery#

Windows Server Backup#

# Windows Server Backup özelliğini yükle Install-WindowsFeature Windows-Server-Backup -IncludeManagementTools # System State backup wbadmin start systemstatebackup -backuptarget:E: -quiet # Full server backup wbadmin start backup -backuptarget:E: -include:C:,D: -allcritical -quiet # Backup policy oluşturma $Policy = New-WBPolicy $FileSpec = New-WBFileSpec -FileSpec "C:\Important" Add-WBFileSpec -Policy $Policy -FileSpec $FileSpec $BackupLocation = New-WBBackupTarget -VolumePath "E:" Add-WBBackupTarget -Policy $Policy -Target $BackupLocation Set-WBSchedule -Policy $Policy -Schedule 02:00 Set-WBPolicy -Policy $Policy

Active Directory Backup#

# AD veritabanı backup ntdsutil "activate instance ntds" "snapshot" "create" "mount {snapshot-guid}" quit quit # SYSVOL backup robocopy C:\Windows\SYSVOL E:\Backup\SYSVOL /MIR /R:3 /W:10

Monitoring ve Performance#

Performance Monitoring#

# Performance counter'ları toplama Get-Counter "\Processor(_Total)\% Processor Time" Get-Counter "\Memory\Available MBytes" Get-Counter "\LogicalDisk(C:)\% Free Space" # Performance counter set oluşturma $Counters = @( "\Processor(_Total)\% Processor Time", "\Memory\Available MBytes", "\LogicalDisk(C:)\% Free Space", "\Network Interface(*)\Bytes Total/sec" ) Get-Counter -Counter $Counters -SampleInterval 5 -MaxSamples 12

Event Log Monitoring#

# Event log'ları sorgulama Get-EventLog -LogName System -EntryType Error -Newest 10 Get-EventLog -LogName Application -Source "Application Error" -Newest 5 # Specific event ID'leri arama Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4625} -MaxEvents 10 # Event log'ları filtreleme Get-WinEvent -FilterHashtable @{LogName='System'; Level=2; StartTime=(Get-Date).AddDays(-1)}

PowerShell ile Otomasyon#

Scheduled Tasks#

# Scheduled task oluşturma $Action = New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "-File C:\Scripts\DailyMaintenance.ps1" $Trigger = New-ScheduledTaskTrigger -Daily -At "02:00AM" $Settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries Register-ScheduledTask -TaskName "Daily Maintenance" -Action $Action -Trigger $Trigger -Settings $Settings -User "SYSTEM"

Remote Management#

# WinRM yapılandırması Enable-PSRemoting -Force Set-WSManQuickConfig -Force # Remote session oluşturma $Session = New-PSSession -ComputerName "Server01" -Credential (Get-Credential) Invoke-Command -Session $Session -ScriptBlock { Get-Service } # Remote'da komut çalıştırma Invoke-Command -ComputerName "Server01","Server02" -ScriptBlock { Get-EventLog -LogName System -EntryType Error -Newest 5 } -Credential (Get-Credential)

Güvenlik#

Windows Defender#

# Windows Defender durumunu kontrol et Get-MpComputerStatus # Tarama başlat Start-MpScan -ScanType QuickScan # Exclusion ekleme Add-MpPreference -ExclusionPath "C:\MyApp" Add-MpPreference -ExclusionExtension ".log"

Windows Firewall#

# Firewall kuralı ekleme New-NetFirewallRule -DisplayName "Allow HTTP" -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow # Firewall profillerini görüntüleme Get-NetFirewallProfile # Firewall loglarını etkinleştirme Set-NetFirewallProfile -Profile Domain,Public,Private -LogAllowed True -LogBlocked True -LogFileName "C:\Windows\System32\LogFiles\Firewall\pfirewall.log"

Troubleshooting#

Yaygın Problemler#

  1. Domain Controller senkronizasyon problemi:
# Time sync kontrol w32tm /query /status w32tm /resync # AD replication kontrol repadmin /showrepl repadmin /syncall
  1. DNS resolution problemi:
# DNS cache temizleme Clear-DnsClientCache ipconfig /flushdns # DNS test nslookup company.local Resolve-DnsName company.local
  1. Group Policy problemi:
# GPO refresh gpupdate /force # GPO troubleshooting gpresult /r gpresult /h C:\GPReport.html

Log Analizi#

# Active Directory log analizi Get-WinEvent -LogName "Directory Service" | Where-Object {$_.LevelDisplayName -eq "Error"} # Authentication log analizi Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4624,4625} -MaxEvents 100 # System log analizi Get-EventLog -LogName System -EntryType Error,Warning -After (Get-Date).AddDays(-1)

Sonuç#

Windows Server ve Active Directory yönetimi, enterprise ortamlarında kritik öneme sahiptir. Bu rehberde ele aldığımız konular:

  • Windows Server kurulumu ve yapılandırması
  • Active Directory yönetimi
  • DNS ve DHCP servisleri
  • File server ve DFS
  • Backup ve monitoring
  • PowerShell ile otomasyon
  • Güvenlik ve troubleshooting

Windows Server ortamlarını etkili yönetmek için PowerShell becerilerinizi geliştirin ve Microsoft dokümantasyonunu düzenli takip edin. Bir sonraki yazımızda Linux ve Windows hibrit ortamlarının yönetimi konusunu ele alacağız.

Related Posts