Разрешение запрещено (publickey) вне домашнего каталога

Мне нужно использовать git из каталога, расположенного на рабочем столе. Когда я использую ssh <url>, он дает

no such identity: .ssh/id_rsa: No such file or directory Permission denied (publickey)

Однако я могу подключиться к серверу, если я из домашнего каталога. Как я могу обновить ./ssh, чтобы сделать его доступным из любого каталога?

1
задан 18 May 2017 в 17:49

3 ответа

Кажется, что вы, возможно, допустили ошибку при настройке git для использования ключей ssh. Ошибка будет использовать путь .ssh/id_rsa, когда вам действительно нужен ~/.ssh/id_rsa, который будет читать ssh-agent в каталоге .ssh в вашем домашнем каталоге. В настоящее время он будет искать каталог .ssh в текущем каталоге, поэтому он работает, когда вы находитесь в домашнем каталоге.

Предполагая, что вы настроили свои ssh-ключи способом, подобным в руководстве github вам нужно удалить вашу неисправную конфигурацию из ssh-agent и добавить ключ с правильным путем.

Чтобы удалить неправильный ключ, находясь в вашем домашнем каталоге: [!d3 ]

ssh-add -d .ssh/id_rsa

Добавьте ключ с правильным путем:

ssh-add ~/.ssh/id_rsa

Ключ теперь должен быть доступен из любой директории.

0
ответ дан 22 May 2018 в 22:30
  • 1
    Привет, Арронический. Ваш ответ был очень полезен для меня. Я сделал, как вы упомянули, я также обновил файл .ssh / config и установил (IdentityFile ~ / .ssh / id_rsa). Спасибо! – n.a.s 19 May 2017 в 23:26
  • 2
    Рад, что это сработало. Вы можете принять ответ и перенести его с помощью проверки и стрелки вверх с левой стороны, если хотите. – Arronical 21 May 2017 в 01:25

Кажется, что вы, возможно, допустили ошибку при настройке git для использования ключей ssh. Ошибка будет использовать путь .ssh/id_rsa, когда вам действительно нужен ~/.ssh/id_rsa, который будет читать ssh-agent в каталоге .ssh в вашем домашнем каталоге. В настоящее время он будет искать каталог .ssh в текущем каталоге, поэтому он работает, когда вы находитесь в домашнем каталоге.

Предполагая, что вы настроили свои ssh-ключи способом, подобным в руководстве github вам нужно удалить вашу неисправную конфигурацию из ssh-agent и добавить ключ с правильным путем.

Чтобы удалить неправильный ключ, находясь в вашем домашнем каталоге:

ssh-add -d .ssh/id_rsa

Добавьте ключ с правильным путем:

ssh-add ~/.ssh/id_rsa

Ключ теперь должен быть доступен из любой директории.

0
ответ дан 18 July 2018 в 13:06

Кажется, что вы, возможно, допустили ошибку при настройке git для использования ключей ssh. Ошибка будет использовать путь .ssh/id_rsa, когда вам действительно нужен ~/.ssh/id_rsa, который будет читать ssh-agent в каталоге .ssh в вашем домашнем каталоге. В настоящее время он будет искать каталог .ssh в текущем каталоге, поэтому он работает, когда вы находитесь в домашнем каталоге.

Предполагая, что вы настроили свои ssh-ключи способом, подобным в руководстве github вам нужно удалить вашу неисправную конфигурацию из ssh-agent и добавить ключ с правильным путем.

Чтобы удалить неправильный ключ, находясь в вашем домашнем каталоге:

ssh-add -d .ssh/id_rsa

Добавьте ключ с правильным путем:

ssh-add ~/.ssh/id_rsa

Ключ теперь должен быть доступен из любой директории.

0
ответ дан 24 July 2018 в 20:06

Другие вопросы по тегам:

Похожие вопросы: