Как добавить файл PEM как закрытый ключ SSH к "известным хостам"

У меня есть рабочий стол Ubuntu, и мне дали файл PEM (mykey.pem) это закрытый ключ SSH для сервера Linux. Я пытаюсь выяснить, где этот файл PEM должен быть размещен локально на моей машине, и как его можно настроить / добавить в мои "известные SSH хосты".

Поиск в этом предмете приводит к множеству ответов / статей для создания ключей SSH, но не для добавления существующего ключа к известным хостам. Идеи?

2 ответа

Решение

Я не знаю о различных типах ключей SSH. Но вы бы поместили открытый ключ на целевой компьютер, а не свой личный ключ. Ваш закрытый ключ остается приватным.

И открытый ключ исходного компьютера должен быть размещен на компьютере Dest в ~/.ssh/authorized_keys Это можно сделать вручную или через ssh-keygen команда.

Я предлагаю вам сделать cat на открытом ключе на исходном компьютере и cat на author_keys на компьютере dest и убедиться, что исходный ключ выглядит так же, как и тот, что в авторизованных ключах

Файл known_hosts - это то, что добавляется автоматически. Вам не нужно редактировать его вручную. Вы можете подключиться даже после удаления файла known_hosts.

РЕДАКТИРОВАТЬ-

Чтобы включить некоторые комментарии в ответ. Открытый ключ происходит от закрытого ключа. Обычно закрытый ключ остается закрытым, но OP получал закрытый ключ, это необычно, но это интересный способ сделать это, потому что это означает, что компьютер dest уже может иметь свой открытый ключ. Таким образом, он мог войти в систему, не добавляя ничего к авторизованному ключу компьютера Dest. ssh -i всегда принимает закрытый ключ. Ему нужно только сделать ssh -i path/to/privatekeyfile user@dest OP использует "openstack", некоторый облачный сервис, и, как говорит сайт openstack, docs.openstack.org/user-guide/content/ssh-into-instance.html $ ssh -i MyKey.pem ubuntu@10.0.0.2 Поэтому, каким бы ни было имя файла закрытого ключа и где бы он ни хранился, вы указываете это при выполнении ssh -i

Согласноsshруководство:

-i идентификационный_файл

Выбирает файл, из которого считывается удостоверение (закрытый ключ) для аутентификации с открытым ключом. По умолчанию используется ~/.ssh/identity для протокола версии 1 и ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 и ~/.ssh/id_rsa для протокола версии 2.

Например$ ssh -i mykey.pem user@host.domain.

Вы также можете добавить свой ключ в агент аутентификации, чтобы избавить вас от необходимости передавать файл идентификации каждый раз, когда вы хотите подключиться к удаленному серверу:

ssh-add — добавляет идентификаторы закрытого ключа в агент аутентификации OpenSSH.

Например, после$ ssh-add mykey.pemты можешь просто сделать$ ssh user@host.domain.

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