Reading PuTTY error messages instead of guessing
Every PuTTY failure message names a specific stage of the connection. Once you know which stage, the list of possible causes shrinks to two or three — and retrying stops being the plan.
Network error: Connection refused
The packet arrived and something actively said no. The SSH service is stopped, it listens on a different port, or you reached the wrong machine.
- Confirm the port with Test-NetConnection host -Port 22 in PowerShell.
- Ask whether the service moved to a non-standard port.
- Check that DNS resolves to the address you expect.
Network error: Connection timed out
Nothing answered at all — typical of a firewall dropping packets silently, a VPN that is not connected, or a host that is powered off.
Server refused our key
- The public key is missing from authorized_keys on the server.
- Permissions on ~/.ssh are too open and the server rejects the file.
- The public key was pasted across multiple lines.
- PuTTY is offering a different key than you think; check Pageant.
WARNING - POTENTIAL SECURITY BREACH
The host key changed. Legitimate reasons exist — the server was rebuilt or migrated — but treat it as hostile until someone confirms otherwise. Never click through this on a production system on your own authority.
Software caused connection abort
Something between you and the host tore down an established session: Wi-Fi roaming, a VPN reconnect, or an idle timeout. Set a 30-second keepalive, and consider a client with auto-reconnect for unstable links.
Questions people ask about this
How do I capture the error before the window closes?
Does antivirus software cause SSH failures?
Independent guide. Software names belong to their respective developers; always download from the vendor's own site. Back to all Windows SSH guides.