Windows 10 版本 1709(秋季创意者版本)

Windows 10 版本 1709(秋季创意者版本)

有一次,我在运行 Fall Creators Update(版本 1709)时将 OpenSSH Client 作为可选功能安装。此后,我将 Windows 更新到版本 1803,不再安装 OpenSSH Client。如何恢复它?

我的理解是,更新到 Windows 10 版本 1803(2018 年 4 月)后,OpenSSH 客户端自动安装。但是,它没有安装,而且我在网上看到的信息如何安装 OpenSSH似乎适用于 Windows 10 的早期版本,当时 OpenSSH 客户端处于测试阶段。

我在管理可选功能但没有看到列出:

在此处输入图片描述

管理可选功能,我尝试选择添加要素查看 OpenSSH 是否存在,但看到“没有要安装的功能”:

在此处输入图片描述

当我拥有秋季创意者更新 (版本 1709) 并且 OpenSSH 处于测试阶段时,我使用上面的管理可选功能成功安装了它。我不知道为什么它现在没有安装,我找不到任何地方可以安装它。

当看着查看可选功能历史记录,我看到 OpenSSH 客户端已于 2018 年 4 月 12 日安装,并且卸载2018 年 8 月 10 日。我不记得明确卸载过它,但就在那一天,我安装了一些 Windows 更新,更新后不得不重启几次。

在此处输入图片描述

我也尝试在标准 Windows 功能下寻找它(打开和关闭 Windows 功能)建议这个答案但我没看到它被列出。(我甚至尝试展开所有可折叠的项目,只是为了确保它没有隐藏在 IIS 或其他地方):

在此处输入图片描述

我也重新启动了几次,看看它是否作为干净启动后启用/安装的功能出现,但仍然没有。

我已确认已更新至 Windows 10 Pro 版本 1803,操作系统内部版本 17134.191。无需再安装 Windows 更新。

我还没有 ssh 客户端。我看到ssh-agent.exessh-add.exessh-keygen.exe甚至sshd.exe(OpenSSH 服务器!) 在 下可用C:\Windows\Sysetm32\OpenSSH。但没有ssh.exe(OpenSSH 客户端)。

如何在 Windows 10 版本 1803 上安装 OpenSSH 客户端?

有没有办法直接下载微软的安装包然后安装呢?

答案1

回答我自己的问题并为任何想要弄清楚如何在 Windows 10 的各个版本上安装 OpenSSH 的人提供额外的信息。


首先,明确回答以下问题:

我已将 Windows 更新至版本 1803,不再安装 OpenSSH 客户端。我该如何恢复它?

这不应该发生。此 Windows 系统似乎出了问题,或者有人修改了默认安装选项(如其他人所建议的那样)。(有多种原因可能导致可选功能不可用。请参阅这个答案举一些例子。

在完成 Windows 10 版本 1709 的全新安装并更新到版本 1803 后,我已经验证了这一点。当更新到 Windows 10 版本 1803 时,如果未进行任何更改或安装任何其他软件包,则 OpenSSH 客户端会作为更新的结果自动安装。

如何在 Windows 10 版本 1803 上安装 OpenSSH 客户端?

请参阅下面的部分以了解安装Windows 10 版本 1803(2018 年 4 月)

有没有办法直接下载微软的安装包然后安装呢?

是的。可以直接从 Microsoft 的Win32的OpenSSHGitHub 上的项目。请参阅替代安装方法请参阅下面的部分了解详情。这也使得安装更新版本的 OpenSSH 成为可能。


Windows 10 版本 1709(秋季创意者版本)

如果运行的是 Windows 10 版本 1709(秋季创意者版),则有两种主要方式安装 OpenSSH。如果您运行的是 1709 之前的 Windows 10 版本,则需要通过自动更新更新到较新版本的 Windows 10。(也可以使用替代安装方法(旧版本 Windows 上列出的版本除外。)

  • 选项 1:更新至 Windows 10 版本 1803,OpenSSH 客户端将自动安装。请参阅Windows 10 版本 1803(2018 年 4 月)请参阅下面的部分了解更多详细信息。

  • 选项 2:OpenSSH 客户端(测试版)和 OpenSSH 服务器(测试版)在此版本的 Windows 中作为可选功能提供。要安装 OpenSSH 可选功能:

管理可选功能->添加要素, 选择OpenSSH 客户端(测试版)以及(如果需要)OpenSSH 服务器(测试版)安装:

在此处输入图片描述

微软提供了有关在该版本 Windows 中安装 OpenSSH Beta 的说明,其中还介绍了配置和使用 OpenSSH 的其他步骤,可在此处找到:在 Windows 10 Fall Creators Update 和 Windows Server 1709 中使用 OpenSSH Beta


Windows 10 版本 1803(2018 年 4 月)

更新到 Windows 10 版本 1803 后,OpenSSH 客户端应该已经安装。如果你已确认你正在运行 Windows 10 版本 1803,但未安装 OpenSSH 客户端,请参阅以下部分替代安装方法

OpenSSH 客户端已安装并列在下方管理可选功能

在此处输入图片描述

OpenSSH 服务器在此版本的 Windows 中作为可选功能提供。要安装 OpenSSH 服务器,请从管理可选功能->添加要素, 选择OpenSSH 服务器安装:

在此处输入图片描述


替代安装方法

可以使用此处列出的替代安装方法风险自负如果上述选项不起作用。它们也应该适用于旧版本的 Windows。

这些方法也可以用于安装较新版本的 OpenSSH:

  • Windows 10 版本 1709(秋季创意者更新)安装 OpenSSH 版本 7.5p1(发布为版本 0.0.18.0由微软于 2017 年 7 月推出)。
  • Windows 10 版本 1803(2018 年 4 月更新)安装 OpenSSH 版本 7.6p1(发布为v7.6.0.0p1-Beta由微软于 2018 年 2 月推出)。
  • 最多Win32-OpenSSH 的最新发布在撰写本文时似乎是基于 7.7.2 版本。

从 Win32-OpenSSH GitHub 项目安装

按照Win32-OpenSSH 维基关于微软Win32的OpenSSHGitHub 项目。密切关注 Wiki 说明和 Win32-OpenSSH 的版本,因为它们会定期更改。

通过 Chocolately 安装 OpenSSH

如果你是巧克力色, AWin32 OpenSSH有巧克力包装可供选择。

然而,这种方法不再被 Microsoft 推荐Microsoft Win32-OpenSSH Wiki 明确指出这是“已弃用的”(即不推荐),即使 Chocolately 包的最新版本已经发布并可用。

如果你选择这条路线,请务必阅读使用 Chocolatey 自动安装和升级 Win32 OpenSSH链接Win32-OpenSSH 维基

答案2

我的理解是,更新到 Windows 10 版本 1803(2018 年 4 月)后,OpenSSH 客户端会自动安装。但是,它没有安装,而且我在网上看到的有关如何安装 OpenSSH 的信息似乎适用于以前版本的 Windows 10,当时 OpenSSH 客户端处于测试阶段。

根据原始配置,如问题中所述,在提升的 PowerShell 中,以下命令Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'将打印以下内容。

名称:OpenSSH.Client~~~~0.0.1.0

状态 :不存在

名称:OpenSSH.Server~~~~0.0.1.0

状态 :不存在

同样,运行以下命令将安装 OpenSSH 客户端和 OpenSSH 服务器。

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

运行与之前相同的命令Get-WindowsCapability -Online | ? Name -like 'OpenSSH*',重新启动后将生成以下输出。

名称:OpenSSH.Client~~~~0.0.1.0

状态:已安装

名称:OpenSSH.Server~~~~0.0.1.0

状态:已安装

我可以确认 OpenSSH 客户端确实在 1803 上默认安装,同样,OpenSSH 服务器是一个必须启用的可选功能。

我还尝试按照此答案的建议在标准 Windows 功能 (打开和关闭 Windows 功能) 下寻找它,但我没有看到它列出。 (我甚至尝试展开所有可折叠的项目,只是为了确保它没有隐藏在 IIS 或类似的东西下):

与该功能处于测试阶段时不同,它不会出现在 Windows 可选功能的传统列表中。它仅出现在“设置”中访问的列表中。顺便说一下,在 Windows 10 1709 和 Windows 10 1803 之间安装 OpenSSH 客户端和 OpenSSH 服务器的命令是相同的。

在 Windows 10 Fall Creators Update 和 Windows Server 1709 中使用 OpenSSH Beta

答案3

如果您像我一样遇到此问题,因为您已安装 openssh,但在 power shell 中收到“无法识别”错误,以下是对我有用的方法:

  1. 通过设置中的“可选功能”菜单卸载 openssh 客户端
  2. 重新安装刚刚卸载的内容
  3. 重启
  4. 重新启动

我不知道为什么需要第二次重启,但一次重启后 %SYSTEMROOT%\System32\OpenSSH\ 已正确添加到我的 $env:PATH,但我仍然收到“无法识别”错误,但再次重启后问题得到了解决。

答案4

我再次处理同样的问题,所以我把这个放在这里提醒自己,因为我总是忘记这个问题:

以管理员身份打开 Windows Powershell 并输入以下两个命令:

安装 OpenSSH 客户端

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

安装 OpenSSH 服务器

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

这两个命令都应该返回以下输出:

在线:真实

RestartNeeded :False

然后进行配置:

Start-Service sshd

可选但建议:

Set-Service -Name sshd -StartupType 'Automatic'

确认防火墙规则已配置。它应该由安装程序自动创建。

Get-NetFirewallRule -Name *ssh*

应该有一个名为“OpenSSH-Server-In-TCP”的防火墙规则,应该启用该规则。如果防火墙不存在,请创建一个

New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -方向Inbound -Protocol TCP -Action Allow -LocalPort 22

它说不需要像往常一样重新启动,但安装服务后总是重新启动 Windows。

这是来自 Microsoft 官方帮助网站。

相关内容