Подключение к удаленному серверу с помощью SSH с Mac

Я сгенерировал файл открытого ключа (id_rsa.pub) и файл закрытого ключа (id_rsa) и поместил их в папку ~/.ssh

По словам администратора сервера, он уже добавил "мой ключ" к серверу для доступа к нему.

Может ли кто-нибудь уточнить, пожалуйста:

  • когда он говорит, что он добавил мой "ключ". Это открытый ключ, который он добавил, или закрытый ключ? У меня сложилось впечатление, что закрытые ключи не должны распространяться, а должны быть отправлены только открытые ключи. Тогда почему администратор сервера попросил мой закрытый ключ?

  • Я попытался подключиться к серверу, используя файл ~/.ssh/config с записью для IdentityFile в качестве ключа id_rsa (закрытый ключ). Я получил ошибку следующим образом: Permission denied (publickey).Значит ли это, что я надеялся послать открытый ключ, а не закрытый ключ?

  • Можно ли идентифицировать открытые ключи и закрытые ключи, просто взглянув на них? Они определенной длины?

2 ответа

  • Администратору сервера нужен только открытый ключ.
  • Если StrictModes yes в sshd_config включен, вы должны проверить разрешения файла id_rsa.
  • Когда вы создали ключ, вы указали длину. Это длина закрытого ключа в битах.

С ssh -v опция, ssh печатает сообщения отладки как это:

$ ssh -v user@server
# ...
# debug1: identity file /Users/you/.ssh/id_rsa type -1
# debug1: identity file /Users/you/.ssh/id_rsa-cert type -1
# debug1: identity file /Users/you/.ssh/id_dsa type -1
# debug1: identity file /Users/you/.ssh/id_dsa-cert type -1
# ...
# debug1: Authentications that can continue: publickey
# debug1: Next authentication method: publickey
# debug1: Trying private key: /Users/you/.ssh/id_rsa
# debug1: Trying private key: /Users/you/.ssh/id_dsa
# debug1: No more authentication methods to try.
# Permission denied (publickey).

Надеюсь это поможет.

Это называется закрытый ключ по причине. Вам нужно дать ему свой открытый ключ, и он должен вставить.ssh, когда вы заходите на сервер, вам нужно использовать свой закрытый ключ в качестве аргумента для ssh.

Нет разницы в длине, это просто пара ключей. То, что один ключ шифрует другой, может расшифровать и наоборот. Вы просто назначаете одно общедоступным, а другое частным.

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