Shared server guidance · Question & answer

Why does Windows say ssh is not recognised?

This error occurs before a network connection is attempted. Usually Windows cannot locate ssh.exe in the current command search path, or the OpenSSH Client feature is missing. Confirm the executable and shell environment first.

BeginnerWindows 11 with Microsoft OpenSSH Client; Windows PowerShell 5.1 or PowerShell 7 as labelledLinux VPS and dedicated servers where a remote Linux command is shown
Go to the answer

Instructions

1. Find any installed executable

Use the syntax for your current shell. PowerShell has a where alias, so use where.exe when you need the Windows executable.

Local Windows PowerShell
Get-Command ssh.exe -All -ErrorAction SilentlyContinue
where.exe ssh

The first command shows all discovered SSH applications; the second searches the Windows command path.

2. Test the Windows optional-feature location

If using Microsoft OpenSSH, check its normal Windows location without modifying PATH.

Local Windows PowerShell
Test-Path "$env:WINDIR\System32\OpenSSH\ssh.exe"
& "$env:WINDIR\System32\OpenSSH\ssh.exe" -V

Run the second command only if Test-Path returns True. The call operator executes a quoted executable path.

3. Resolve the specific cause

If the feature is absent, install the approved OpenSSH client. If the absolute path works, reopen the terminal and inspect the machine or user PATH through approved Windows settings. Avoid commands that overwrite PATH wholesale, since that can break unrelated tools.

Check the result

  • The trusted absolute executable path returns its version.
  • A new terminal resolves ssh.exe to that same installation.

Troubleshooting

The absolute path does not exist
Check the OpenSSH Client optional feature or the documentation for your approved alternate installation.
A different ssh.exe appears first
Identify which application supplied it. Use a known absolute path while resolving the intended command precedence.

Official references

Use the documentation for your installed version when a flag, service name or platform feature differs.