When using SSH to connect and authenticate to GitHub, you may need to troubleshoot unexpected issues that may arise.

Using SSH over the HTTPS port

Sometimes, firewalls refuse to allow SSH connections entirely. If using HTTPS cloning with credential caching is not an option, you can attempt to clone using an SSH connection made over the HTTPS port. Most firewall rules should allow this, but proxy servers may interfere.

Recovering your SSH key passphrase

If you've lost your SSH key passphrase, depending on the operating system you use, you may either recover it or you may need to generate a new SSH key passphrase.

Error: Permission denied (publickey)

A "Permission denied" error means that the server rejected your connection. There could be several reasons why, and the most common examples are explained below.

Error: Bad file number

This error usually means you were unable to connect to the server. Often this is caused by firewalls and proxy servers.

Error: Key already in use)

This error occurs when you try to add a key that's already been added to another account or repository.

Error: Permission to user/repo denied to other/user

This error usually means you were unable to connect to the server. Often this is caused by firewalls and proxy servers.

Error: Key already in use)

This error occurs when you try to add a key that's already been added to another account or repository.

Error: Permission to user/repo denied to user/other-repo

This error means the key you are pushing with is attached to another repository as a deploy key, and does not have access to the repository you are trying to push to.

Error: Agent admitted failure to sign)

In rare circumstances, connecting to GitHub via SSH on Linux produces the error "Agent admitted failure to sign using the key". Follow these steps to resolve the problem.

Error: SSL certificate problem, verify that the CA cert is OK

This error means your CA root certificate is out of date. If your CA root certificate, you won't be able to push or pull from GitHub repositories.

Error: We're doing an SSH key audit)

This error means the SSH key you're using to perform a Git operation is unverified.