1. Anasayfa
  2. PC / Mobil

Windows 10 ve Windows 11 SSH Etkinleştirme


Windows 10 ve Windows 11 son sürümleri, OpenSSH’ye dayalı yerleşik bir SSH sunucusu ve istemcisi içerir. Bu, Linux dağıtımları gibi herhangi bir SSH istemcisini kullanarak Windows 10/11 veya Windows Server 2019’a uzaktan bağlanabileceğiniz anlamına gelir. Bu yazıda, Windows 10 ve Windows 11’de SSH’yi nasıl yapılandıracağınızı ve bir SSH istemcisini kullanarak nasıl bağlanacağınızı göstereceğiz.

OpenSSH, Linux kullanıcıları tarafından uzun süredir kullanılan Secure Shell’in (SSH) açık kaynaklı, platformlar arası bir sürümüdür. Bu proje şu anda Windows’a taşınmıştır ve hemen hemen tüm Windows sürümlerinde SSH sunucusu olarak kullanılabilir.

Windows 10’da SSH Server Nasıl Etkinleştirilir?

Öncelikle, Windows 10 yapınızın 1809 veya daha yeni olduğundan emin olmak için şu komutu çalıştırın:

winver
windows10 winver

NOT: Daha eski bir Windows 10 yapınız varsa, bunu Windows Update aracılığıyla veya daha yeni bir Windows 10 sürümüyle bir ISO görüntüsü kullanarak güncelleyebilirsiniz. Windows 10 yapınızı güncellemek istemiyorsanız, Windows için Win32-OpenSSH bağlantı noktasını GitHub ile manuel olarak yükleyebilirsiniz .

OpenSSH sunucusunu Windows 10’da grafiksel Ayarlar panelinden etkinleştirebilirsiniz:

  1. Ayarlar > Uygulamalar > Uygulamalar ve özellikler > İsteğe bağlı özellikler‘e gidin (veya ms-settings:appsfeatures komutunu çalıştırın);
  2. Özellik ekle’yi tıklayın, OpenSSH Sunucusu’nu (güvenli anahtar yönetimi ve uzak makinelerden erişim için OpenSSH tabanlı güvenli kabuk (SSH) sunucusu) seçin ve Yükle‘yi tıklayın.

PowerShell’i kullanarak sshd sunucusunu da yükleyebilirsiniz:

Add-WindowsCapability -Online -Name OpenSSH.Server*

Veya DISM kullanarak:

dism /Online /Add-Capability /CapabilityName:OpenSSH.Server~~~~0.0.1.0

OpenSSH sunucusunun kurulu olduğundan emin olmak için aşağıdaki PS komutunu çalıştırın:

Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Server*'

Name : OpenSSH.Server~~~~0.0.1.0

State : Installed

SSH sunucusunu kaldırmak için aşağıdaki PowerShell komutunu kullanın:

Remove-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

Windows 11’e SSH Nasıl Kurulur?

OpenSSH Sunucusunu Windows 11’de etkinleştirmek için aşağıdaki adımları izleyin:

  1. Ayarlar > Uygulamalar > İsteğe bağlı özellikler’e gidin;
  2. Özellikleri Görüntüle’ye tıklayın;
  3. Listeden OpenSSH Sunucusu’nu seçin ve İleri > Yükle’ye tıklayın;
  4. Kurulumun tamamlanmasını bekleyin.
İlgilenebilirsin:   Bilgisayarda Oyun Performansını Artırmak İçin 16 İpucu

OpenSSH ikili dosyaları C:\Windows\System32\OpenSSH\ klasöründe bulunur.

Windows 10 ve 11’de SSH Hizmetini Yapılandırma

PowerShell Get-Service komutunu kullanarak ssh-agent ve sshd hizmetlerinin durumunu kontrol edin:

Get-Service -Name *ssh*

Hizmetleri başlatmak ve onlar için otomatik başlatmayı yapılandırmak için aşağıdaki komutları çalıştırın:

Start-Service sshd

Set-Service -Name sshd -StartupType 'Automatic'

Start-Service ‘ssh-agent’

Set-Service -Name ‘ssh-agent’ -StartupType 'Automatic'

Ayrıca Windows Defender Güvenlik Duvarı’nda 22 numaralı TCP bağlantı noktasına gelen bağlantılara izin vermeniz gerekir. Netsh kullanarak bağlantı noktasını açabilirsiniz:

netsh advfirewall firewall add rule name=”SSHD service” dir=in action=allow protocol=TCP localport=22

Veya PowerShell kullanarak SSH trafiğine izin vermek için bir güvenlik duvarı kuralı ekleyebilirsiniz:

New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

Artık herhangi bir SSH istemcisini kullanarak Windows 10’a bağlanabilirsiniz. Linux’tan bağlanmak için şu komutu kullanın:

ssh -p 22 admin@192.168.1.90

Burada yönetici, bağlanmak istediğiniz yerel bir Windows kullanıcısıdır. 192.168.1.90, Windows 10 bilgisayarınızın bir IP adresidir.

Bundan sonra, SSH oturumunda yeni bir Windows komut istemi penceresi açılacaktır.

Windows 10’da SSH üzerinden oturum açarken cmd.exe yerine PowerShell.exe cli’yi çalıştırmak için Windows 10’da (yönetici hesabı altında) aşağıdaki komutu çalıştırmanız gerekir:

New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -Force

Şimdi, varsayılan OpenSSH kabuğunu değiştiriyorsunuz. Buradan Windows’a SSH üzerinden bağlanırken cmd.exe yerine hemen PowerShell istemini göreceksiniz.

Parola doğrulaması yerine anahtar tabanlı ssh kimlik doğrulaması kullanmak istiyorsanız, istemcinizde ssh-keygen kullanarak bir anahtar oluşturmanız gerekir. Ardından, id_rsa.pub dosyasının içeriği Windows 10’da c:\users\admin\.ssh\authorized_keys dosyasına kopyalanmalıdır.

Bundan sonra, Linux istemcinizden Windows 10’a parola olmadan bağlanabilirsiniz. Şu komutu kullanın:

ssh -l admin@192.168.1.90

Windows’ta %programdata%\ssh\sshd_config yapılandırma dosyasını kullanarak çeşitli OpenSSH sunucu ayarlarını yapılandırabilirsiniz.

İlgilenebilirsin:   Windows Defender Güvenlik Duvarı Kapatma (Hızlı Çözüm)

Örneğin, parola kimlik doğrulamasını devre dışı bırakabilir ve yalnızca anahtar tabanlı kimlik doğrulamasını bırakabilirsiniz:

PubkeyAuthentication yes

PasswordAuthentication no

Burada ayrıca SSHD’nin bağlantıları kabul edeceği yeni bir TCP bağlantı noktası (varsayılan TCP 22 bağlantı noktası yerine) belirtebilirsiniz. Örneğin:

Port 2222

AllowGroups, AllowUsers, DenyGroups, DenyUsers yönergelerini kullanarak, SSH aracılığıyla Windows’a bağlanmasına izin verilen veya reddedilen kullanıcıları ve grupları belirleyebilirsiniz. sshd’nin izin verme ve reddetme kuralları şu sırayla işlenir: DenyUsers, AllowUsers, DenyGroups ve AllowGroups.

sshd_config dosyasında değişiklik yaptıktan sonra sshd hizmetini yeniden başlatmanız gerekir:

Get-Service sshd| Restart-Service –force

Windows’ta OpenSSH’nin önceki sürümlerinde, tüm sshd hizmet günlükleri varsayılan olarak C:\ProgramData\ssh\logs\sshd.log metin dosyasına yazılırdı.

Windows 11’de SSH günlükleri, Olay Görüntüleyici konsolu (eventvwr.msc) kullanılarak görüntülenebilir. Tüm SSH olayları, Uygulama ve Servis Günlükleri > OpenSSH > Operasyonel ayrı bir bölümde mevcuttur.

Örneğin, ekran görüntüsü, SSH aracılığıyla bilgisayara başarılı bir şekilde bağlanan bir olay örneğini gösterir. ssh istemcisinin IP adresini (hostname) ve bağlanmak için kullanılan kullanıcı adını görebilirsiniz.

FTC: İçerikte bulunan bağlantılar aracılığıyla ürün/hizmet satın aldığınızda komisyon kazanabiliriz. Komisyonlar editoryal değerlendirmelerimizi etkilemez.