Зараз у Windows 10 вбудований OpenSSH.
Https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse
Отримайте командний рядок адміністратора
Open PowerShell as an Administrator.
Перевірте доступні версії
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
Встановити клієнт
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
Встановити сервер
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Запустіть сервер і включіть його під час завантаження
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
Знайдіть свою IP-адресу Windows
ipconfig
Знайдіть свою IP-адресу на віддаленому (Linux) пристрої.
ifconfig
Створіть відкритий ключ SSH
ssh-keygen.exe
Скопіюйте відкритий ключ з локальної (Windows) на віддалену (Linux) машину, щоб вам не потрібно було постійно вводити пароль.
Зауважте, що ssh-copy-id наразі недоступний у Windows.
cat C:\Users\YOU/.ssh/id_rsa.pub | ssh USER@REMOTE_IP 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'
Зробіть те ж саме на своїй машині Linux (зауважте, ssh-copy-id не працює)
ssh-keygen # if needed
cat ~/.ssh/id_rsa.pub | ssh USER@WINDOWS_IP 'mkdir -p ~/.ssh && type con >> C:/Users/YOU/.ssh/authorized_keys'
Метод, описаний вище, не працював для мене, тому я закінчив вручну SCPing відкритий ключ і вставив його у файл C: /Users/YOU/.ssh/authorized_keys.
Це все ще не спрацювало, тому мені довелося змінити файл sshd_config.
Match User YOU
AuthorizedKeysFile C:/Users/YOU/.ssh/authorized_keys
Створіть пароль у Windows, якщо у вас його ще немає
System Settings...Sign-in options
- Зверніть увагу, ви все ще можете відключити екран входу в Windows, встановивши: a) Установити параметр "Потрібно ввійти" та ніколи б) Використовуючи команду "netplwiz" та зніміть прапорець "Користувачі повинні ввести пароль ...".
Тепер ви маєте змогу SSH або SCP зі своєї машини Linux
scp FILE WINDOWS_IP:C:/Users/YOU/Desktop
scp some_file user@host:/c/temp