SSH Errors Explained – Connection refused / timed out / permission denied

If the RPI SSH Pro application cannot connect, in most cases you will encounter one of the following three errors.

In this post, I will explain what they mean and how to fix them.


:red_circle: 1. Connection refused

What does it mean?

The target machine is reachable, but the SSH service is not running on the specified port.

Most common causes

  • The sshd service is not running (Windows / Linux)
  • Incorrect port number
  • SSH server is not installed

Solution

On Windows:

On Linux / Raspberry Pi:

sudo systemctl status ssh

If it is not running:

sudo systemctl start ssh

:orange_circle: 2. Connection timed out

What does it mean?

The client cannot establish a connection to the server.

Network packets are not reaching the target machine.

Most common causes

  • Firewall is blocking port 22
  • Incorrect IP address
  • Router/NAT is not configured
  • Attempting external access without port forwarding or VPN

How to check

On a local network:

ping IP_address

Port test:

telnet IP_address 22

If there is no response → this is most likely a network-level issue.

:yellow_circle: 3. Permission denied

What does it mean?

The server is reachable and SSH is running, but authentication failed.

Most common causes

  • Incorrect username
  • Incorrect password
  • The user does not have SSH access permissions
  • Invalid or missing public key (when using key-based authentication)

How to verify

  • Try logging in locally on the machine
  • Double-check the username
  • On Windows, ensure that the user account exists

:black_circle: 4. Host key verification failed

What does it mean?

The server’s SSH host key has changed (for example, after a reinstall).

Solution

Remove the previously stored host key and reconnect.

If you are using RPI SSH Pro, the application will warn you about the key change. Only approve the new key if you are sure you are connecting to the correct server.

Quick Diagnostic Table

Error Server reachable? SSH running? Authentication OK?
Connection refused Yes No
Connection timed out No
Permission denied Yes Yes No

:speech_balloon: Need Help?

Please provide:

  • Operating system
  • Exact error message
  • Local or external network
  • Port used
  • Password or key-based authentication

The more details you provide, the faster we can help.