As you may already know, Windows 10 includes built-in SSH software - both a client and a server! It is very useful when you need to access a Linux server quickly. Everything can be done with just a few clicks, without installing extra software.
On Windows machines, the freeware open-source software PuTTY is the de-facto standard when it comes to SSH and Telnet. With Windows 10, Microsoft has finally listened to its users after years of them requesting an SSH client and server. By including an OpenSSH implementation, the value of the OS increases.
At the moment of this writing, the OpenSSH software included in Windows 10 is at a BETA stage. This means it can have some stability issues.
The provided SSH client is similar to the Linux client. At first glance, it appears to support the same features as its *NIX counterpart. It is a console app, so you should be able to start it from the command prompt. Let's enable it.
Enable OpenSSH Client in Windows 10
- Open the Settings app and go to Apps -> Apps & features.
- On the right, click Manage optional features.
- On the next page, click the button Add a feature.
- In the list of features, select OpenSSH Client and click on the Install button.
This will install the OpenSSH Client software in Windows 10. Its binary files are located under the folder
c:\windows\system32\Openssh. Besides the SSH client, the folder contains the following client tools:
- and the config file "sshd_config".
I suggest you to sign out from your user account and sign in back in order to add these binaries to the PATH environment variable. Otherwise, you will have to type the full path to these binaries to use them.
Now, you can try it in action.
How to use the OpenSSH client on Windows 10
- Open a new command prompt window.
- Type the ssh command using the following syntax:
ssh username@host -p port
For example, I will connect to my Raspberry PI-based media center:
The result will be as follows:
The built-in client is almost identical to the traditional SSH client from the OpenSSH package available on Linux. It brings the same console experience. It is very useful when you need to change some configuration option or restart a daemon. If you are used to managing Linux machines from the command line, you will find it useful.
However, there are a number of situations still where the good old PuTTY wins the race. It allows you to have a list of servers without making shortcuts or writing batch files. It allows changing a number of connection options on-the-fly and configuring options like encoding or environment variables quickly using the GUI. From my point of view, the built-in OpenSSH software works well for baseline functionality when you are not allowed install PuTTY on the PC you are using (e.g. in a locked down corporate environment). It's also useful if you are a pro Linux user who has learned all the SSH client options by heart.