Windows 10 şimdi yerleşik OpenSSH'ye sahip.
Https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse
Yönetici komut istemi alın
Open PowerShell as an Administrator.
Kullanılabilir sürümleri kontrol edin
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
İstemciyi yükle
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
Sunucuyu yükle
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Sunucuyu başlatın ve önyüklemede etkinleştirin
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
Windows IP adresinizi bulun
ipconfig
Uzak (Linux) makinenizde IP adresinizi bulun.
ifconfig
Genel bir SSH anahtarı oluşturma
ssh-keygen.exe
Genel anahtarı yerel (Windows) 'dan uzak (Linux) makineye kopyalayın, böylece her zaman bir şifre girmenize gerek kalmaz.
Ssh-copy-id'in şu anda Windows'ta mevcut olmadığını unutmayın.
cat C:\Users\YOU/.ssh/id_rsa.pub | ssh USER@REMOTE_IP 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'
Linux makinenizde de aynısını yapın (Not, ssh-copy-id çalışmıyor)
ssh-keygen # if needed
cat ~/.ssh/id_rsa.pub | ssh USER@WINDOWS_IP 'mkdir -p ~/.ssh && type con >> C:/Users/YOU/.ssh/authorized_keys'
Yukarıdaki yöntem benim için işe yaramadı, bu yüzden ortak anahtarı elle SCPing ve C: /Users/YOU/.ssh/authorized_keys dosyasına yapıştırarak sona erdi.
Bu hala işe yaramadı, bu yüzden sshd_config dosyasını değiştirmek zorunda kaldım.
Not Defteri'ni Yönetici Olarak Aç
% Programdata% \ ssh \ sshd_config dosyasını açın
Aşağıdaki satırları ekleyin:
Match User YOU
AuthorizedKeysFile C:/Users/YOU/.ssh/authorized_keys
Zaten bir hesabınız yoksa Windows'ta bir şifre oluşturun
System Settings...Sign-in options
- Not, Windows oturum açma ekranını yine de a) 'Oturum açmayı zorunlu kıl' seçeneğini asla ayarlamayacak şekilde ayarlayabilir ve b) 'netplwiz' komutunu kullanarak ve 'Kullanıcılar parola girmelidir ...' onay kutusunun işaretini kaldırabilirsiniz.
Artık Linux makinenizden SSH veya SCP yapabilmeniz gerekir
scp FILE WINDOWS_IP:C:/Users/YOU/Desktop
scp some_file user@host:/c/temp