Как использовать ForwardAgent со связкой ключей или обнаружить новый логин?

Как использовать ForwardAgent со связкой ключей или обнаружить новый логин?

Мой сценарий:

У меня есть Server Aдома, и Server Bу родителей. У меня также есть Laptop Aи Laptop Bдома. Я делаю всякие странные ssh-прыжки - я могу подключиться Laptop A -> Server A -> Server B. Или Laptop B -> Server A -> Laptop A. ИлиServer A -> Server B

У меня настроены связки ключей на всех этих машинах, и как настоящий компьютерщик, заботящийся о безопасности, я

eval `keychain --clear`

в моем .zloginдосье.

Моя проблема в том, что даже если я разблокирую свои ключи на Laptop A, как только я подключусь кServer A нему, он пытается использовать связку ключей/ssh-агент на сервере A, поэтому мне приходится разблокироватьтеКлючи тоже. У меня ForwardAgentтоже есть настройки на всех этих машинах. Я бы предпочел, чтобы произошло что-то вроде этого:

  • АвторизоватьсяLaptop A
  • Разблокировать Laptop Aключи
  • ssh кServer A
  • ssh в Server B- используя ключи из Laptop A.

Как я могу это сделать?

решение1

Это не дает прямого ответа на ваш вопрос, но дает вам альтернативный вариант для рассмотрения, который может вам помочь. Обычно я настраиваю свой $HOME/.ssh/configфайл следующим образом:

IdentityFile ~/.ssh/my-computers

# infrastructure
Host lap1
    User sam
    #PubkeyAuthentication no
    ProxyCommand ssh [email protected] nc lap1.internal.local %p

Затем, когда я хочу подключиться к своей системе lap1.internal.local, когда я вне дома, я просто делаю:

ssh lap1

Я обычно копирую свои открытые ключи ssh-copy-id на другие серверы, на которые хочу войти. Дайте мне знать, если хотите, чтобы я объяснил подробнее.

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