Настройка циклического подхода к входу по протоколу SSH в сеть

Настройка циклического подхода к входу по протоколу SSH в сеть

У меня есть сеть из нескольких linux/unix-боксов (различные ubuntu, raspian и на OS-X-боксе), в которые я регулярно вхожу. Обычно я нахожусь на машине OSX и сгенерировал пару ключей, которая была предоставлена ​​каждому из боксов, и я могу войти в каждый из них, используя эту пару ключей.

Проблема, с которой я столкнулся, заключается в попытке создать пару ключей для других устройств, когда мне нужно будет копировать файлы напрямую между этими устройствами, поскольку большую часть времени MBP подключен к Wi-Fi, а соединение слишком медленное для перемещения больших файлов.

Для простого примера, мой MBP — это компьютер A. Ubuntu №1 — это компьютер B, а Ubuntu №2 — это компьютер C.

Использование пар ключей:
A может войти в B
A может войти в C

Но B не может войти в C, а C не может войти в B.

Я получаю ошибку «открытый ключ». доступ запрещен (открытый ключ).

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

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

редактировать:

Вот что происходит более подробно (извините, мне следовало быть более подробным)

Из A (MBP) я вхожу в B (bbox), но не могу войти в C (sun) (из B).

Из A я могу войти в C, но не в B (из C).

madivad@bbox:~$ ssh sun
Permission denied (publickey).

Я тоже не могу отправить открытый ключ по той же причине:

madivad@bbox:~$ ssh-copy-id sun
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/madivad/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

/usr/bin/ssh-copy-id: WARNING: All keys were skipped because they already exist on the remote system.
        (if you think this is a mistake, you may want to use -f option)

madivad@bbox:~$ ssh-copy-id -f sun
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/madivad/.ssh/id_rsa.pub"
Permission denied (publickey).
madivad@bbox:~$

Давайте сгенерируем его снова (что я и делал бесчисленное количество раз):

madivad@bbox:~$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/madivad/.ssh/id_rsa):
/home/madivad/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/madivad/.ssh/id_rsa.
Your public key has been saved in /home/madivad/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:<removed> madivad@bbox
The key's randomart image is:
+---[RSA 2048]----+
|       So        |
|  beautiful it's |
|   a shame to    |
|    remove it    |
|    (although    |
|       it's      |
|   probably not  |
|     required)   |
+----[SHA256]-----+
madivad@bbox:~$ ssh-copy-id sun
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/madivad/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
Permission denied (publickey).
madivad@bbox:~$

Кажется, я хожу по кругу.

решение1

Я получаю ошибку «открытого ключа».

Учитывая вашу точность в сообщениях об ошибках, я могу лишь сказать, что вы где-то допустили ошибку при генерации или развертывании ключей.

Вам следует сгенерировать пару ключей на каждой машине, выполнив команду

ssh-keygen

Затем для каждой пары машин, для которой вы хотите использовать ключ на машине X для входа в машину Y, выполните следующую команду на машине X:

ssh-copy-id X

Связанный контент