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
На вашем удаленном (Linux) компьютере найдите свой IP-адрес.
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'
Описанный выше метод не сработал для меня, поэтому я в конечном итоге вручную скопировал открытый ключ и вставил его в файл C: /Users/YOU/.ssh/authorized_keys.
Это все еще не работало, поэтому мне пришлось изменить файл sshd_config.
Откройте Блокнот как Администратор
Откройте% programdata% \ ssh \ sshd_config
Добавьте следующие строки:
Match User YOU
AuthorizedKeysFile C:/Users/YOU/.ssh/authorized_keys
Создайте пароль в Windows, если у вас его еще нет
System Settings...Sign-in options
- Обратите внимание, что вы по-прежнему можете отключить экран входа в Windows: а) установив параметр «Требовать вход» никогда и б) используя команду «netplwiz» и сняв флажок «Пользователи должны ввести пароль ...».
Теперь вы должны иметь возможность SSH или SCP с вашего компьютера Linux
scp FILE WINDOWS_IP:C:/Users/YOU/Desktop
scp some_file user@host:/c/temp