There is typically a simple remedy if the Permission Denied (publickey) SSH problem from GitHub prevents you from cloning a GitHub repository through SSH. The majority of the time, an Error appears when Bash || Git is used after a prolonged period of inactivity.
How to fix this issue? Well, you can read this article on the simplest way to fix GitHub permission denied (publickey).
Table of Content
Things You Should Know About GitHub Permission Denied
- First, avoid using the sudo command with git. When using sudo, the command is executed as the root user and SSH uses a different key pair to authenticate with GitHub.
- When you generate SSH keys without sudo and then clone a repository using sudo, you will not use the same keys.
- GitHub will then deny access to your private repositories because it cannot verify your identity.
- Most frequently display an Error after lengthy use.
- Bash || Git, so you will see an Error in this case. Correct this Error. Create a New GitHub SSH Key.
How to Fix GitHub Permission Denied (PublicKey)
Permission refused (publickey) errors on GitHub are typically brought on by one of the following three problems:
- The GitHub SSH URL contains an invalid email address that you have entered.
- Your public SSH key is not set up in your GitHub account.
- To be used by the secure shell, GitHub SSH keys must be created.
Always use git@github.com
Let’s assume that your repository’s SSH URL is repo-example-howtomags as shown below:
git@github.com:howtomags/repo-example-howtomags.git
The SSH URL’s preamble must begin with git@github.com. Some users incorrectly substitute their username for the first git or their GitHub account email.
Keep the email address as is. You need to use git@github.com.
Using the -T switch, you can check the GitHub SSH connection for the Permission denied error. If SSH is configured properly, your username will be listed in the output:
C:\fix\permission\denied> ssh -T git@github.com Hi howtomags! GitHub SSH authentication is successful…
GitHub SSH configuration
To prevent GitHub’s Permission Denied (publickey) SSH error, make sure your public SSH key is registered in your account settings.
Check the SSH and GPG link in your account settings to ensure that your public key has been set up properly. Add your public key if no keys are displayed and try connecting to GitHub via SSH once more. The problem should disappear.
GitHub SSH key generation
If you have no SSH keys at all, you can be sure that you’ll see GitHub’s Permission denied (publickey) error.
Look in the user’s home directory for the .ssh folder. There should be a public and private key file in this folder whether you use Windows or Linux. In the event that it is blank, you must first generate an SSH keypair before registering the public key in GitHub.
C:\fix\permission\denied> ssh-keygen -o -t rsa -C "ssh-keygen@mcnz.com"
Once the GitHub SSH keys have been generated, copy the public key value and set it up in your GitHub account settings. then make another SSH try to GitHub.
Errors are never fun to deal with, especially if it’s your first time connecting to a distant resource. Fortunately, you may resolve the Permission denied (publickey) SSH error on GitHub by using one of the three options listed above.
Tips
In this article, we examined several potential solutions for the “Permission denied” error on Github:
- Avoid using sudo with git.
- Copy the repository location from the Github website to avoid typos.
- Verify that a key pair exists and that the SSH client is using it.
- Incorporate the proper public key into your GitHub account.
You should now be able to resolve this annoying error and continue working on your project.