下载OpenSSH二进制压缩包:https://github.com/PowerShell/Win32-OpenSSH/releases

解压放置到指定目录如:C:\Program Files\OpenSSH

在PowerShell中执行命令进行安装和配置

powershell -ExecutionPolicy Bypass -File install-sshd.ps1

启动服务

Start-Service sshd
Start-Service ssh-agent

如开启了防火墙,需要添加规则

netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22

设置服务开机自动启动

Set-Service sshd -StartupType Automatic
Set-Service ssh-agent -StartupType Automatic

使用putty、xshell等工具测试登录

使用证书登录

确认配置文件C:\ProgramData\ssh\sshd_config中的两个配置项:

AuthorizedKeysFile      .ssh/authorized_keys 

以及(下面这个选项默认没有注销,需要注释掉)

#Match Group administrators                                                                                                     
#       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys                                                   

然后你就可以正常使用linux一样,将你的客户机的id_rsa.pub的内容放到服务器的用户目录,例如:C:\Users\Administrator\.ssh\authorized_keys中,完成后就可以登录了。

还可以采用另外一种方式,不用将客户端的pubkey放到服务器用户的authirized_keys中:

https://github.com/PowerShell/Win32-OpenSSH/wiki/Certificate-Authentication

[ 编辑 | 历史 ]
最近由“jilili”在“2021-08-31 10:08:39”修改