Bir Windows VDS kurulduktan sonra sistem erişime açık hale gelir. Ancak erişilebilir olması, sunucunun güvenli ve kontrol altında olduğu anlamına gelmez. Varsayılan kullanıcı ve yetki yapılandırmasıyla kullanılan sistemler, uzun vadede güvenlik açıklarına yol açabilir. Bu içerikte, Windows VDS üzerinde ilk kurulumda yapılması gereken kullanıcı ayarları ve yetkilendirme düzeni detaylandırılmaktadır.
İlk Administrator Hesabı
Windows VDS’e ilk kez bağlanıldığında sistem varsayılan olarak Administrator hesabıyla açılır. Bu hesap, sunucu üzerindeki tüm yetkilere sahiptir ve bu nedenle saldırganların en çok hedef aldığı kullanıcıdır. Yapılandırmaya başlamadan önce, bu hesabın aktif durumda olup olmadığını doğrulamak gerekir. Administrator hesabının durumu PowerShell üzerinden kolayca kontrol edilebilir ve bu kontrol, sonraki yetkilendirme adımları için temel oluşturur.
net user AdministratorBu çıktı sayesinde Administrator hesabının aktif durumu, parola geçerlilik süresi ve son oturum bilgileri net şekilde görülebilir. Günlük işlemler için bu hesabı kullanmak yerine, ayrı bir yönetici kullanıcı tanımlamak daha güvenli ve kontrollü bir yaklaşımdır.

- 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.
Ayrı Bir Admin Hesabı Oluşturmak
Windows VDS üzerinde Administrator hesabını sürekli kullanmak yerine, günlük yönetim işlemleri için ayrı bir admin kullanıcı tanımlamak gerekir. Bu yaklaşım hem güvenlik risklerini azaltır hem de yapılan işlemlerin log kayıtlarında daha net takip edilmesini sağlar. Kullanıcı oluşturma işlemi PowerShell üzerinden birkaç komutla kolayca gerçekleştirilebilir.
net user vdsadmin GüçlüBirŞifre123! /addArdından bu kullanıcıyı Administrator grubuna ekleyelim.
net localgroup administrators vdsadmin /add
Günlük İşlemler İçin Neden Standart Kullanıcı Tercih Edilmelidir?
Windows VDS ortamlarında yapılan en yaygın hatalardan biri, tüm kullanıcıların yönetici yetkileriyle çalıştırılmasıdır. Başlangıçta bu yaklaşım pratik gibi görünse de zamanla sistem üzerinde kontrolsüz değişikliklere ve kararlılık sorunlarına yol açar. Günlük işlemler, uygulama denemeleri ve dosya yönetimi gibi işlemler için standart bir kullanıcı hesabı kullanmak daha güvenli bir yapı sağlar.
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 beklenmedik şekilde durması ya da reboot sonrasında açılmaması her zaman yetkilendirme kaynaklı değildir. Windows sanal sunucularda disk yapısında oluşan hatalar da bu duruma sebep olabilir. Bu yüzden CHKDSK ile disk taraması yapılarak dosya sistemi kontrol edilmeli ve problemin asıl kaynağı netleştirilmelidir.
RDP Erişim Yetkilerinin Kontrol Edilmesi
Windows VDS ortamlarında en sık hedef alınan servislerden biri uzak masaüstüdür. RDP’nin doğrudan dış ağdan erişilebilir olması, bu servisi güvenlik açısından kritik hale getirir. Bu nedenle yalnızca RDP’nin açık olup olmadığı değil, hangi kullanıcıların bu erişime sahip olduğu da mutlaka kontrol edilmelidir. RDP yetkisi bulunan kullanıcıları görmek için ilgili komut çalıştırılabilir.
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 Servislerde Firewall Yapılandırması
VDS’te firewall çoğu zaman sadece port açma aracı gibi görülür. Aslında firewall, kullanıcı ve servis erişiminin devamıdır.
Örneğin RDP için açık olan 3389 portunu kontrol edelim.
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 üzerinde bir portun açık olarak tanımlanması, ilgili servisin bu portu aktif şekilde kullandığı anlamına gelmez. Portun gerçekten dinlenip dinlenmediğini anlayabilmek için sistem üzerindeki aktif bağlantıların kontrol edilmesi gerekir. Bu noktada Windows’ta netstat komutu kullanılarak port ve servis ilişkisi hızlıca incelenebilir ve yapılandırmanın doğru çalışıp çalışmadığı netleştirilebilir.
Windows VDS’te UAC Neden Aktif Kalmalıdır?
UAC uyarıları çoğu kullanıcı tarafından gereksiz bir engel olarak görülür ve bu nedenle sıkça kapatılır. Oysa UAC, uygulamaların hangi seviyede yetkiyle çalışacağını kontrol eden temel bir güvenlik mekanizmasıdır. Sistem seviyesinde işlem yapılmak istendiğinde kullanıcıdan onay alınmasını sağlar. UAC devre dışı bırakıldığında, zararlı bir yazılım hiçbir uyarı göstermeden yönetici yetkileriyle çalışabilir. Bu yüzden Windows VDS’te UAC’nin kapatılması değil, etkin tutulması önerilir. Bu tercih sistem performansını değil, güvenliği doğrudan etkiler.


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