“Permission denied (publickey)” Error When Connecting Over SSH

SSH often uses a key-based authentication method that offers better security over the regular username and password authentication. On occasion, you may encounter a “Permission denied (publickey)” error.

The key-based authentication system uses two keys:

  • one public
  • one private key

The public key resides on your server, while the private key resides on your local device. Despite the “public” portion of this error message, it indicates an issue with the key residing on your device.

However, since the public and private keys are a matching pair, the entire set needs to be regenerated to fix this error. SSH key generation methods differ depending on the Operating System (OS) of your device or the SSH application used. Below you can find links to tutorials showing you how to generate key pairs on the most popular OSs:

Alternative  Causes

While the primary issue with the error in question is a problem with the keys, other possibilities exist. Most root causes still stem from issues with the SSH connection information used- for example:

  • Incorrect SSH username
  • Outdated IP address or hostname
  • Wrong password

The primary method of resolving this error is to correct the mismatching information in your public and private keys or simply regenerate the keys.


Working in the web hosting industry for over 13 years, Rado has inevitably got some insight into the industry. A digital marketer by education, Rado is always putting himself in the client's shoes, trying to see what's best for THEM first. A man of the fine detail, you can often find him spending 10+ minutes wondering over a missing comma or slightly skewed design.

Write a Comment