OpenSSH 1是安全 Shell (SSH) 工具的开放源代码版本,Linux 及其他非 Windows 系统的管理员使用此类工具跨平台管理远程系统。
OpenSSH 已添加至 Windows系统,在Windows系统中也可以安装和使用Windows自带的OpenSSH工具。
OpenSSH 目前最低支持 Window 10(版本 1809 及更高版本)或 Windows Server 2019。更低的版本仍然需要安装第三方的OpenSSH工具。
可以使用 Windows Server 2019 和 Windows 10 设备上的 Windows 设置安装 OpenSSH 组件。
安装 OpenSSH 组件:
设置完成后,回到“应用”>“应用和功能”和“可选功能”,你应会看到已列出 OpenSSH 。
如果安装的是SSH服务器则需要注意:
安装 OpenSSH 服务器将创建并启用一个名为 OpenSSH-Server-In-TCP 的防火墙规则。 需要允许 22 Port 上的
IN SSH 流量。 如果未启用此规则且未打开此端口,那么连接将被拒绝或重置。
若要使用 PowerShell 安装 OpenSSH,请先以管理员身份运行 PowerShell。 为了确保 OpenSSH 可用,请运行以下 cmdlet:
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
如下我们可以查看到,客户端已经安装了SSH Client,但是没有安装SSH Server。
PS C:\Users\86186> Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
Name : OpenSSH.Client~~~~0.0.1.0
State : Installed
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent
PS C:\Users\86186>
如果两者都没有安装,则可以参考如下指令进行安装服务器或者客户端:
# Install the OpenSSH 客户端
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
# Install the OpenSSH 服务器
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
安装后,可从使用 OpenSSH 客户端连接到 OpenSSH 服务器\设备,如下所示。 请务必以管理员身份运行 PowerShell:
ssh username@servername\device IP
连接后,会收到如下所示的消息:
The authenticity of host 'servername (10.00.00.001)' can't be established.
ECDSA key fingerprint is SHA256:(<a large string>).
Are you sure you want to continue connecting (yes/no)?
选择“yes”后,该服务器会添加到包含 Windows 客户端上的已知 SSH 主机的列表中。实际测试,同一台SSH服务器,在第二次登录时,不会再有这个是否需要继续连接的提示。
系统此时会提示你输入password:。 为防止密码泄漏,密码在键入的过程中会以星号*****显示。
如下为通过SSH Client连接一台Ubuntu 服务器,登录成功后的画面:
Windows上安装openSSH后,可以通过设置和powershell两个方法卸载 OpenSSH 组件,通过设置卸载比较简单,如下只介绍一下使用powershell如何卸载openSSH Client:
# 卸载 OpenSSH 客户端
Remove-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
# 卸载 OpenSSH 服务器
Remove-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
如果在卸载时SSH服务正在使用中,建议稍后重启 Windows系统,以使得全部内容生效。