4

Где-то я читал, что для доступа к удаленной машине через SSH нам нужно скопировать ~/.ssh/id_rsa.pub локальной машины в ~/.ssh/authorized_keys удаленной машины. Я сделал это, и я могу получить доступ к удаленной машине через SSH.

Я хочу, чтобы удаленный компьютер был доступен с нескольких серверов, таких как: Машина A может обращаться к машине B, и есть другая машина C, которая также может обращаться к машине B.

Я скопировал ~/.ssh/id_rsa.pub машины A в ~/.ssh/authorized_keys машины B, и я могу получить доступ к машине B.

Но я также хочу получить доступ к машине B с машины C, тогда что мне делать? Я имею в виду, где я должен скопировать ~/.ssh/id_rsa.pub машины C на машину B, чтобы я мог получить доступ к машине B с машины C?

2 ответа2

9

Файл authorized_keys на удаленном хосте может содержать больше , чем просто один открытый ключ. Просто добавьте их - убедитесь, что каждый ключ получает новую строку.

Чтобы упростить этот процесс, есть ssh-copy-id(1).

ssh-copy-id user@machine-B

Вы можете выполнить указанную выше команду на компьютере C. Он скопирует открытый ключ по умолчанию на компьютер B и автоматически добавит его к authorized_keys ключу. Вы также можете указать другой открытый ключ для копирования, используя опцию -i если хотите.


Вот ссылка в руководстве:

Пользователь создает свою пару ключей, запустив ssh-keygen(1) . Это хранит закрытый ключ в […] ~/.ssh/id_rsa.pub (протокол 2 RSA) в домашнем каталоге пользователя. Затем пользователь должен скопировать открытый ключ в ~/.ssh/authorized_keys в своем домашнем каталоге на удаленном компьютере.

Файл authorized_keys [...] имеет один ключ в каждой строке, хотя линии могут быть очень длинными. После этого пользователь может войти без указания пароля.

3

Кроме того, вы можете запустить эту команду:

cat id_rsa.pub | ssh remote-user@remote-host "cat >>~/.ssh/authorized_keys"

Для добавления в файл авторизованные_ключи

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .