安装方法
近期开始学习Redis,准备直接拿Linux虚拟机练手,然而在尝试使用PowerShell进行连接时,确报ssh不存在(如下图),经过查阅资料,解决方案记录如下:

Win+i打开设置:

应用->可选功能:

添加功能:

勾选OpenSSH客户端并点击安装:

正在安装:

安装完成:

解决问题:

(可执行程序路径:C:\Windows\System32\openssh\ssh.exe)
他山之石
此外,记录使用 PowerShell 安装 OpenSSH的方法:
以管理员身份运行
PowerShell。 为了确保OpenSSH可用,请运行以下cmdlet:
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'如果两者均尚未安装,则此操作应返回以下输出:
Name : OpenSSH.Client~~~~0.0.1.0
State : NotPresent
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent然后,根据需要安装服务器或客户端组件:
# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0这两者应该都会返回以下输出:
Path :
Online : True
RestartNeeded : False启动并配置
OpenSSH服务器:若要启动并配置
OpenSSH服务器来开启使用,请以管理员身份打开PowerShell,然后运行以下命令来启动sshd service:
# Start the sshd service
Start-Service sshd
# OPTIONAL but recommended:
Set-Service -Name sshd -StartupType 'Automatic'
# Confirm the Firewall rule is configured. It should be created automatically by setup. Run the following to verify
if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) {
Write-Output "Firewall Rule 'OpenSSH-Server-In-TCP' does not exist, creating it..."
New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
} else {
Write-Output "Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists."
}连接到
OpenSSH服务器安装后,可从使用
PowerShell安装了OpenSSH客户端的Windows 10或Windows Server 2019设备连接到OpenSSH服务器,如下所示。 请务必以管理员身份运行PowerShell:
ssh username@servername连接后,会收到如下所示的消息:
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)?选择“是”后,该服务器会添加到包含 Windows 客户端上的已知 SSH 主机的列表中。
系统此时会提示你输入密码。 作为安全预防措施,密码在键入的过程中不会显示。
连接后,你将看到 Windows 命令行界面提示符:
domain\username@SERVERNAME C:\Users\username>使用 Windows 设置来卸载
OpenSSH若要使用 Windows 设置来卸载
OpenSSH:1.打开“设置”,然后转到“应用”>“应用和功能” 。
2.转到“可选功能”。
3.在列表中,选择“
OpenSSH客户端”或“OpenSSH服务器” 。4.选择“卸载”。
使用
PowerShell卸载OpenSSH若要使用
PowerShell卸载OpenSSH组件,请使用以下命令:
# Uninstall the OpenSSH Client
Remove-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
# Uninstall the OpenSSH Server
Remove-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0如果在卸载时服务正在使用中,稍后可能需要重启 Windows。
参考资料:
https://www.howtogeek.com/336775/how-to-enable-and-use-windows-10s-built-in-ssh-commands/
https://docs.microsoft.com/zh-cn/windows-server/administration/openssh/openssh_install_firstuse
版权属于:soarli
本文链接:https://blog.soarli.top/archives/600.html
转载时须注明出处及本声明。