首页 > 解决方案 > 设置从 Linux 到 Windows 10 的无密码 SSH

问题描述

我正在尝试设置从 linux 服务器到 windows 机器的无密码 ssh 路径。我目前在 Windows 机器上运行 MobaSSH。我可以从 linux 服务器 ssh 到 windows 机器并执行命令就好了,但我必须输入密码。

我在 linux 系统上创建了一个公共 RSA 密钥,并使用 WinSCP 将文件复制到 C:\Users\MyUserName\.ssh 文件夹并在 Windows 机器上重新启动了 MobaSsh 服务。

它仍然不会让我在没有密码的情况下 ssh。我在这里想念什么?非常感谢任何帮助。

标签: ssh

解决方案


OpenSSH 可用于 Windows 10,并且对我来说非常可靠。我可以在没有密码的情况下从 Linux 机器上始终如一地连接。以下是如何设置它。

  • 升级到 Windows 10 版本 1809 或更高版本

    • 检查通过:powershell -c "(Get-Item 'HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion').GetValue('ReleaseID')"; 另请参阅systeminfo | findstr /B /C:"OS Name" /C:"OS Version"Pro vs. Home,内部版本号
    • 通过 Windows Update 设置升级或下载 Windows 10(后者解决了某些系统卡在 1803的问题)
  • 在 Windows PowerShell 中安装 SSH 客户端和服务器(以管理员身份;源代码):

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Start-Service sshd  # remote login should be possible following this command
Set-Service -Name sshd -StartupType 'Automatic'
Get-NetFirewallRule -Name *ssh*  # there should be a firewall rule named "OpenSSH-Server-In-TCP"  # optional
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0  # optional
  • 为管理员启用公钥登录() -从 Linux 命令行
scp ~/.ssh/id_rsa.pub administrator@remote_computer_name:'C:\ProgramData\ssh\administrators_authorized_keys'  # if using an alternate method, ensure file is not UTF-16 encoded
icacls C:\ProgramData\ssh\administrators_authorized_keys /remove "NT AUTHORITY\Authenticated Users"
icacls C:\ProgramData\ssh\administrators_authorized_keys /inheritance:r
get-acl C:\ProgramData\ssh\ssh_host_dsa_key | set-acl C:\ProgramData\ssh\administrators_authorized_keys
  • 为非管理员启用公钥登录 -在 Windows PowerShell 中
Install-Module -Force OpenSSHUtils -Scope AllUsers  # for: Repair-AuthorizedKeyPermission
cd C:\Users\...
ssh-keygen  # create ~/.ssh
# add key(s) to ~/.ssh/authorized_keys
$ConfirmPreference = 'None'; Repair-AuthorizedKeyPermission -FilePath .ssh\authorized_keys
# if above fails, try ''%%Set-ExecutionPolicy Unrestricted -Scope CurrentUser%%''; see also https://github.com/PowerShell/Win32-OpenSSH/issues/1245#issuecomment-440388604

推荐阅读