Permission denied (publickey)


Client could not push to git or seems to have lost access to their repo.

Error Message

  Permission denied (publickey).
fatal: Could not read from remote repository. Please make sure you have the correct access rights
and the repository exists.

Possible causes and troubleshooting steps

Client's user doesn't have access to the app

You can confirm this by asking the client to execute eyk whoami then confirming if that user on the list of users that have access to the application via eyk perms:list -a <application name>.

If they are not yet on the list, then they would need to ask the app owner to add them by running eyk perms:add <user_email_address> -a <app_name>

Note: Command should be executed by the app's owner


Client hasn't uploaded the keys yet

Verify with the client if their public key is on the cluster by asking them to execute eyk keys:list and confirm the result.

They can use the command eyk keys:add ~/.ssh/ to add the key, with~/.ssh/ as the path to their public key on Mac/Linux, and as their SSH public key

Expected result should be:

Uploading to deis... done

You can also provide the related article:


SSH key for the user doing the push is not on the local machine's keyring or ssh-agent

If the private key is present on the filesystem, they can execute GIT_SSH_COMMAND='ssh -i <path_to_private_key>' git push <remote>.


Client recently updated OS and caused SSH RSA Cipher to be deprecated

As the recent Linux and MacOS have deprecated RSA signatures by default, they need to add it back by executing the commands below:

  • For Linux - echo "PubkeyAcceptedKeyTypes +ssh-rsa" >> /etc/ssh/ssh_config
  • For MacOS - echo "PubkeyAcceptedKeyTypes +ssh-rsa" >> ~/.ssh/config



Article is closed for comments.