Я загрузил свой проект в частный репозиторий github с открытым ключом ssh.
и я подключился к своему удаленному серверу Ubuntu 18 с помощью команды ssh, так как я добавил свой открытый ключ ssh в ~/.ssh/authorized_keys ранее.
Но я получил ошибку клонирования моего проекта:
root@myserver:/var/www/html# git clone [email protected]:myaccount/yt3.git
Cloning into 'yt3'...
identity_sign: private key /root/.ssh/id_rsa contents do not match public
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.
У меня есть:
root@myserver:~/.ssh# ls -la
total 28
drwx------ 2 root root 4096 Dec 8 16:40 .
drwx------ 10 root root 4096 Dec 8 16:44 ..
-rw-r--r-- 1 root root 788 Dec 8 08:30 authorized_keys
-rwx------ 1 root root 182 Mar 9 2019 config
-rw------- 1 root root 1675 Feb 26 2019 id_rsa
-rw-r--r-- 1 root root 394 Dec 8 16:40 id_rsa.pub
-rw-r--r-- 1 root root 3538 Dec 8 16:40 known_hosts
Host bitbucket.org
IdentityFile ~/.ssh/id_rsa
Hostname bitbucket.org
User git
Host github.com
IdentityFile ~/.ssh/id_rsa
Hostname github.com
User git
Что я пропустил ?
Спасибо!
Должен ли я также заменить содержимое /root/.ssh/id_rsa (мой закрытый ключ) на сервере?
Вы должны сделать ssh-keygen -yf id_rsa > id_rsa.pub
, чтобы повторно сгенерировать правильный открытый ключ из закрытого ключа.
Добавление открытого ssh-ключа к вашему ~/.ssh/authorized_keys
не позволит GitHub или BitBucket аутентифицировать вас.
GitHub или BitBucket вообще не будут использовать ваш ~/.ssh/authorized_keys
.
Вы должны зарегистрировать свой открытый ключ на GitHub (или отдельный ключ на BitBucket, добавление того же не рекомендуется).
И если ваш файл конфигурации включает пользователя git
, вам не нужно повторять его в URL-адресе SSH:
git clone github.com:myaccount/yt3.git
identity_sign: private key /root/.ssh/id_rsa contents do not match public
рассказывает все.