Permission denied (publickey).
fatal: Could not read from remote repository.
This error signifies that the server rejected a log in attempt, check the following things:
- On the client:
- Ensure the public and private ssh keys are added to the correct Gitea user.
- Make sure there are no issues in the remote url. In particular, ensure the name of the Git user (before the
@
) is spelled correctly. - Ensure public and private ssh keys are correct on client machine.
- On the server:
- Make sure the repository exists and is correctly named.
- Check the permissions of the
.ssh
directory in the system user’s home directory. - Verify that the correct public keys are added to
.ssh/authorized_keys
.
Try to run Rewrite '.ssh/authorized_keys' file (for Gitea SSH keys)
on the Gitea admin panel. - Read Gitea logs.
- Read /var/log/auth (or similar).
- Check permissions of repositories.
The following is an example of a missing public SSH key where authentication succeeded, but some other setting is preventing SSH from reaching the correct repository.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
In this case, look into the following settings:
- On the server:
- Make sure that the
git
system user has a usable shell set- Verify this with
getent passwd git | cut -d: -f7
usermod
or chsh
can be used to modify this.
- Ensure that the
gitea serv
command in .ssh/authorized_keys
uses the correct configuration file.