Windows VDS kurulumu tamamlandığında sunucu erişilebilir ve çalışır durumdadır. Ancak sistemin aktif olması, güvenlik ve yetki kontrolünün doğru yapılandırıldığı anlamına gelmez. Varsayılan kullanıcı ayarlarıyla kullanılan VDS ortamları, zaman içinde kontrolsüz erişimlere ve güvenlik açıklarına neden olabilir. Bu içerikte, Windows VDS üzerinde ilk aşamada yapılması gereken kullanıcı yapılandırmalarını ve yetkilendirme düzenini detaylı şekilde ele alıyoruz.
Administrator Hesabı
Windows VDS kurulumunun ardından sistem, varsayılan olarak Administrator hesabıyla kullanılabilir hale gelir. Bu hesap tam yetkili olduğu için güvenlik açısından dikkatle ele alınmalıdır. İlk yapılandırma aşamasında, Administrator hesabının durumunu kontrol etmek ve aktifliğini doğrulamak gerekir. PowerShell üzerinden yapılacak basit bir kontrol, sistemin güvenli şekilde yapılandırılması için başlangıç noktasıdır.
net user AdministratorBu aşamada Administrator hesabının aktifliği, parola politikası ve son oturum bilgileri görüntülenir. Ancak sistem yönetimi için bu hesabı sürekli kullanmak yerine, yetkileri ayrı bir yönetici kullanıcıya devretmek daha sağlıklı bir yapı sağlar.

- Günlük kullanım hesabı olmamalıdır.
- Tarayıcıyla internete çıkmak için kullanılmamalıdır.
- Kontrol paneli kurulumu dışında sürekli aktif tutulmamalıdır.
Yönetim Amaçlı Ayrı Bir Admin Hesabının Oluşturulması
Administrator hesabının yalnızca gerektiğinde kullanılması, Windows VDS ortamlarında önerilen bir yaklaşımdır. Günlük yönetim görevleri için ayrı bir admin kullanıcı oluşturmak, hem güvenlik hem de loglama açısından daha sağlıklı bir yapı sunar. Bu kullanıcı, PowerShell üzerinden yapılacak basit bir işlemle sisteme eklenebilir.
net user vdsadmin GüçlüBirŞifre123! /addArdından bu kullanıcıyı Administrator grubuna ekleyelim.
net localgroup administrators vdsadmin /add
Neden Günlük Kullanım İçin Standart Kullanıcı Gerekir?
Windows VDS’lerde yönetici yetkilerinin kontrolsüz kullanımı, uzun vadede sistem bozulmalarının temel nedenlerinden biridir. Günlük kullanım, uygulama denemeleri ve dosya işlemleri gibi senaryolar için standart bir kullanıcı hesabı oluşturmak, sistem güvenliği ve kararlılığı açısından daha sağlıklı bir yaklaşım sunar.
net user appuser GüçlüBirŞifre456! /add⚠️Bu kullanıcıyı herhangi bir yönetici grubuna eklemiyoruz. Eğer belirli bir klasöre erişmesi gerekiyorsa NTFS izinleri üzerinden yetki verebiliriz.
Servisler neden Administrator hesabıyla çalışmamalı?
Bir servisin Administrator ile çalışması demek, o servisteki bir hatanın tüm sistemi etkilemesi demektir.
New-LocalUser "svc-app" -Password (Read-Host -AsSecureString)Servislerin durması ya da sistem yeniden başlatıldıktan sonra çalışmaması her zaman yetkilendirme hatalarından kaynaklanmaz. Windows sanal sunucu ortamlarında disk tarafında oluşan hatalar da bu tür sorunlara yol açabilir. Bu nedenle, sorunun kaynağını netleştirmek için CHKDSK kullanılarak dosya sistemi kontrol edilmelidir.
RDP Erişimi Kontrolü
Windows VDS üzerinde RDP servisi genellikle varsayılan olarak açıktır ve bu durum servisi saldırılara açık hale getirir. Bu nedenle kontrol edilmesi gereken tek konu RDP’nin çalışıp çalışmadığı değildir. Asıl önemli olan, hangi kullanıcıların uzak masaüstü üzerinden erişim sağlayabildiğidir. Bu bilgiyi görmek için sistem üzerinde yetki kontrolü yapılmalıdır.
Get-LocalGroupMember "Remote Desktop Users"Gerçekten bağlanması gerekmeyen kullanıcılar bu grupta olmamalıdır. Özellikle Administrator hesabı ile sürekli RDP yapılması önerilmez.
Kullanıcı ve Servis Bazlı Firewall Yapılandırması
VDS ortamlarında firewall genellikle yalnızca port açmak veya kapatmak için kullanılan basit bir araç gibi değerlendirilir. Oysa firewall, hangi kullanıcının ve hangi servisin dış dünyayla iletişim kurabileceğini belirleyen temel katmandır. Bu nedenle firewall yapılandırması, kullanıcı ve servis yetkilendirmesinin doğal bir devamı olarak ele alınmalıdır. Örnek olarak RDP erişimi için kullanılan 3389 portunun açık olup olmadığını kontrol edebiliriz.
Get-NetFirewallRule | Where-Object {$_.DisplayName -like "*Remote Desktop*"}Belirli bir portu sadece ihtiyaç varsa açmak için komutu kullanalım.
New-NetFirewallRule -DisplayName "Allow RDP" -Direction Inbound -Protocol TCP -LocalPort 3389 -Action AllowFirewall tarafında önemli olan, her portun neden açık olduğunun bilinmesidir. Kullanılmayan servislerin portları açık bırakılmamalıdır.

Firewall tarafında tanımlı bir portun açık olması, ilgili servisin bu port üzerinden iletişim kurduğu anlamına gelmez. Servisin portu aktif olarak dinleyip dinlemediğini doğrulamak için sistemdeki mevcut bağlantılar kontrol edilmelidir. Bu aşamada netstat komutu kullanılarak firewall ve servis yapılandırmasının doğru şekilde çalışıp çalışmadığı kolayca tespit edilebilir.
UAC Ayarlarının Yapılandırması
Birçok kullanıcı, karşısına çıkan onay pencerelerini gereksiz bulduğu için UAC özelliğini tamamen devre dışı bırakmayı tercih eder. Ancak UAC, sistemde yetki yükseltme sürecini kontrol eden önemli bir güvenlik katmanıdır. Bir uygulama sistem seviyesinde işlem yapmak istediğinde kullanıcıdan onay talep eder. Bu mekanizma kapatıldığında, zararlı yazılımlar herhangi bir uyarı vermeden sistem yetkisi kazanabilir.
Bu nedenle Windows VDS ortamlarında ilk yapılması gereken işlem UAC’yi kapatmak değil, aktif halde tutmaktır. Bu ayar performansla değil, doğrudan güvenlikle ilgilidir.


UAC ayarlarını kontrol etmek için aşağıdaki komutu kullanalım. Çıkan sonuç EnableLUA = 1 olmalıdır.
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Policies\SystemWindows VDS’te SSH neden gereklidir?
Windows Server sürümleri aslında OpenSSH desteğiyle gelir.
SSH ile GUI açmadan PowerShell komutları çalıştırılabilir, servisler kontrol edilebilir, acil durumlarda RDP’ye alternatif erişim sağlanılabilir.
Windows VDS’te OpenSSH kurulumu
Önce OpenSSH yüklü mü kontrol edelim.
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'Yüklü değilse
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Start-Service sshd
Set-Service sshd -StartupType AutomaticBu noktadan sonra Windows VDS SSH bağlantılarını kabul eder.
SSH erişimi kimlerle sınırlanmalı?
SSH herkese açık bırakılmamalıdır. Servis kullanıcıları veya panel kullanıcılarının SSH ile bağlanabilmesi ciddi bir güvenlik riskidir.
C:\ProgramData\ssh\sshd_configSadece gerekli kullanıcıya izin vermek için komutu kullanalım.
AllowUsers vds-adminDeğişiklikten sonra yeniden başlatalım.
Restart-Service sshdSık Sorulan Sorular
Yeni kullanıcı oluşturdum ama RDP ile bağlanamıyorum?
Bu genelde kullanıcı oluşturulup RDP yetkisi verilmediğinde olur. Windows’ta bir kullanıcı admin olsa bile otomatik olarak RDP izni olmayabilir. Çözüm olarak kullanıcıyı Remote Desktop Users grubuna eklemek gerekir.
Add-LocalGroupMember -Group "Remote Desktop Users" -Member vds-adminFirewall kapalı sandım ama bazı portlara erişemiyorum?
Windows Firewall tamamen kapalı gibi görünse bile aktif bir ağ profili üzerinden kural uyguluyor olabilir. Önce aktif profil kontrol edilmelidir.
Get-NetConnectionProfileArdından ilgili port için gerçekten inbound kural var mı bakılır.
Get-NetFirewallRule | Where-Object {$_.Direction -eq "Inbound" -and $_.Enabled -eq "True"}Port açtığını sanıp açmayan kullanıcıların çoğu burada takılır.
Plesk kurulu ama panelden yaptığım ayarlar bazen geçerli olmuyor?
Bu neredeyse her zaman Windows tarafında fazla admin kullanıcı olmasından kaynaklanır. Panel ayarı yapılır ama başka bir admin kullanıcı Windows tarafında üzerine yazar.
Get-LocalGroupMember Administrators