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: 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.