Windows 10 v1803: where is OpenSSH Client?
At one time I installed OpenSSH Client as an Optional Feature when running Fall Creators Update (version 1709). I've since updated Windows to version 1803 and I no longer have OpenSSH Client installed. How do I get it back?
My understanding is that after updating to Windows 10 version 1803 (April 2018), OpenSSH client is automatically installed. However, it's not installed and the information I've seen online for how to install OpenSSH appears to be for previous versions of Windows 10, when OpenSSH Client was in beta.
I've looked for OpenSSH under Manage optional features and do not see it listed:
From Manage optional features, I've tried selecting Add a feature to see if OpenSSH is there, and I see "No features to install.":
When I had the Fall Creators Update (version 1709) and OpenSSH was in beta, I successfully installed it using the above Manage Optional Features. I don't know why it's not installed now and I can't find it anywhere to install.
When looking at See optional feature history, I see that OpenSSH Client was installed on 4/12/18 and uninstalled on 8/10/18. I don't recall explicitly uninstalling it, but that's the same day I installed a number of Windows updates and had to reboot a couple of times after updating.
I've also tried looking for it under the standard Windows Features (Turn Windows Features on and off) as suggested by this answer and I do not see it listed. (I've even tried expanding all of the collapsible items just to make sure it wasn't hiding under IIS or something):
I've also rebooted several times, to see if it appears as a feature to enable/install after a clean boot, but still nothing.
I've verified I'm updated to Windows 10 Pro Version 1803, OS build 17134.191. There are no more Windows updates to install.
I still do not have an ssh client. I see that ssh-agent.exe
, ssh-add.exe
, ssh-keygen.exe
, and even sshd.exe
(OpenSSH server!) is available under C:\Windows\Sysetm32\OpenSSH
. But no ssh.exe
(OpenSSH client).
How do I install OpenSSH client on Windows 10 version 1803?
Is there a way to simply download the installation package from Microsoft and install it?
Answering my own question and providing additional information for anyone else looking to figure out how to get OpenSSH installed on various versions of Windows 10.
First, to explicitly answer the questions:
I've since updated Windows to version 1803 and I no longer have OpenSSH Client installed. How do I get it back?
This should not happen. There appears to be something wrong with this Windows system or something has modified the default installation options as others have suggested. (There are a number of reasons that may prevent Optional Features from being available. See this answer for some examples.)
I've now verified this to be true after completing a fresh install of Windows 10 version 1709 and then updating to version 1803. When updating to Windows 10 version 1803 without making any changes or installing any additional packages, OpenSSH Client was installed automatically as a result of the update.
How do I install OpenSSH client on Windows 10 version 1803?
See section below for installation on Windows 10 version 1803 (April 2018).
Is there a way to simply download the installation package from Microsoft and install it?
Yes. It's possible to download OpenSSH directly from Microsoft's Win32-OpenSSH project on GitHub. See Alternate Installation Methods section below for details. This also makes it possible to install more recent releases of OpenSSH.
Windows 10 version 1709 (Fall Creators)
If running Windows 10 version 1709 (Fall Creators) there are two primary ways to install OpenSSH. If you're running a version of Windows 10 older than 1709, you will want to update to a newer version of Windows 10 via Automatic Updates. (It's also possible to use the Alternative Installation Methods listed below on older versions of Windows.)
Option 1: Update to Windows 10 version 1803 and OpenSSH Client will be automatically installed. See Windows 10 version 1803 (April 2018) section below for more details.
Option 2: OpenSSH Client (Beta) and OpenSSH Server (Beta) are available as optional features in this version of Windows. To install the OpenSSH optional features:
From Manage optional features -> Add a feature, select OpenSSH Client (Beta) and (if desired) OpenSSH Server (Beta) to install:
Microsoft's instructions for installing the OpenSSH Beta in this version of Windows, which also covers additional steps for configuring and using OpenSSH, can be found here: Using the OpenSSH Beta in Windows 10 Fall Creators Update and Windows Server 1709
Windows 10 version 1803 (April 2018)
OpenSSH Client should already be installed after updating to Windows 10 version 1803. If you've verified you're running Windows 10 Version 1803 and OpenSSH Client is not installed, see the section below for Alternative Installation Methods.
OpenSSH Client is already installed and listed as such under Manage optional features:
OpenSSH Server is available as an Optional Feature in this version of Windows. To install OpenSSH Server, from Manage optional features -> Add a feature, select OpenSSH Server to install:
Alternative Installation Methods
The alternative installation methods listed here may be used at your own risk if the above options do not work. They should also work on older versions of Windows.
These methods can also be used for installing more recent versions of OpenSSH:
- Windows 10 Version 1709 (Fall Creators Update) installs OpenSSH version 7.5p1 (released as version 0.0.18.0 by Microsoft in July 2017).
- Windows 10 Version 1803 (April 2018 Update) installs OpenSSH version 7.6p1 (released as v7.6.0.0p1-Beta by Microsoft in February 2018).
- The most recent release of Win32-OpenSSH at the time of this writing appears to be based on version 7.7.2.
Install from Win32-OpenSSH GitHub project
Follow the instructions on the Win32-OpenSSH Wiki on Microsoft's Win32-OpenSSH GitHub Project. Pay close attention to the Wiki instructions and the version of Win32-OpenSSH as they change periodically.
Install OpenSSH via Chocolately
If you're a fan of Chocolately, a Win32 OpenSSH Chocolately package is available.
However, this method is no longer recommended by Microsoft and the Microsoft Win32-OpenSSH Wiki explicitly states that this is "deprecated" (i.e. NOT RECOMMENDED), even though recent versions of the Chocolately package are released and available.
If you go this route, be sure to read the Win32 OpenSSH Automated Install and Upgrade using Chocolatey link on the Win32-OpenSSH Wiki.
My understanding is that after updating to Windows 10 version 1803 (April 2018), OpenSSH client is automatically installed. However, it's not installed and the information I've seen online for how to install OpenSSH appears to be for previous versions of Windows 10, when OpenSSH Client was in beta.
As per the original configuration, as described in the question, within an elevated PowerShell the following command Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
would have printed the following.
Name : OpenSSH.Client~~~~0.0.1.0
State : NotPresent
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent
Likewise, running the following commands would have installed OpenSSH Client and OpenSSH Server.
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Running the same command as before, Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
, would have generated the following output after a restart.
Name : OpenSSH.Client~~~~0.0.1.0
State : Installed
Name : OpenSSH.Server~~~~0.0.1.0
State : Installed
I was able to confirm that OpenSSH Client is indeed installed by default on 1803, likewise, OpenSSH Server is an optional feature that must be enabled.
I've also tried looking for it under the standard Windows Features (Turn Windows Features on and off) as suggested by this answer and I do not see it listed. (I've even tried expanding all of the collapsible items just to make sure it wasn't hiding under IIS or something):
Unlike the feature when it was still in its beta form, it does not appear, in the legacy list of windows optional features. It only appears in the list accessed within Settings. The command to install OpenSSH Client and OpenSSH Server are identical between Windows 10 1709 and Windows 10 1803 by the way.
Using the OpenSSH Beta in Windows 10 Fall Creators Update and Windows Server 1709
if you, like me, got to this question because you have openssh installed but you are getting the "not recognised" error in power shell, here's what worked for me:
- uninstall openssh client via the "optional features" menu in settings
- re-install what you just uninstalled
- reboot
- reboot again
I have no idea why the second reboot was necessary, but after one reboot %SYSTEMROOT%\System32\OpenSSH\ had been added correctly to my $env:PATH, but I was still getting the "not recognized" error, but rebooting again fixed it.