Я пытаюсь добавить ключ в github и свой сервер, чтобы мой сервер можно было клонировать из github.
mkdir -p /root/.ssh
chmod 700 /root/.ssh
cat > /root/.ssh/authorized_keys <<EOF
ssh-rsa AAAAB3NzaC1yc2E.... GitHub
EOF
chmod 600 /root/.ssh/authorized_keys
cat > /root/.ssh/github.id_rsa <<EOF
-----BEGIN RSA PRIVATE KEY-----
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-----END RSA PRIVATE KEY-----
EOF
chmod 600 /root/.ssh/github.id_rsa
cat > /root/.ssh/config <<EOF
Host github.com
Hostname github.com
IdentityFile ~/.ssh/github.id_rsa
EOF
chmod 600 /root/.ssh/config
Я добавил открытый ключ в github, и когда я пытаюсь клонировать, он не подключается. Что я делаю не так?
Вы создали ключ SSH в /root/.ssh/github.id_rsa
но вы используете ~/.ssh/github.id_rsa
в вашей конфигурации SSH. Если вы не используете свой root
аккаунт для доступа к GitHub, git
будет искать SSH-ключ не в том месте. Он будет смотреть в /home/$USERNAME/.ssh/github.id_rsa
вместо того /root/.ssh/github.id_rsa
.
Я бы рекомендовал поместить ключ SSH в ~/.ssh/
. Если вы хотите использовать свой старый ключ, просто переместите его туда:
mv /root/.ssh/github.id_rsa /home/$USERNAME/.ssh/
где $USERNAME
это ваше имя пользователя.
выстрелил в темноте здесь. Github позволяет клонировать 2 типа конечных точек. http и ssh. Например
https://github.com/python-diamond/Diamond.git
против
git@github.com:python-diamond/Diamond.git
Версия https не использует ключи ssh. Поэтому убедитесь, что вы используете версию ssh, которая всегда начинается с git@github.com.