1

У меня есть ситуация, которая похожа на то, что размещено здесь, но не совсем то же самое.

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

Я хотел бы сделать следующее, но я запутался и не знаю как. Я хотел бы открыть туннель от машины B (посредник) к A (удаленный) и позволить моему коллеге подключиться к удаленной машине через туннель. Однако при этом я не хочу предоставлять ему доступ к моей учетной записи на компьютере B (посредник).

Я пробовал ssh -fNL 12345:A:22 me@A на B но когда я запускаю ssh -p 12345 me@B я получаю сообщение об ошибке « Permission denied (public key). Что я здесь не так делаю?

1 ответ1

1

Когда вы запускаете ssh -p 12345 me@B , SSH-клиент туннелируется на SSH-сервер на A. Вам все равно потребуются действительные учетные данные (учетная запись и пароль или SSH-ключ) для входа A в A. Для этого вам следует используйте ваш SSH-ключ для входа в A на этом этапе.

Я не уверен, что вам нужен туннель для этого вообще. Пусть ваш друг создаст свой собственный ключ SSH и предоставит вам открытую часть ключа. Добавьте открытый ключ к вашей authorized_keys файла на A. Если ваш друг сможет связаться с А через SSH, он сможет использовать свой собственный ключ SSH для входа в свою учетную запись.

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

Если он когда - нибудь перестанет быть вашим другом, просто взять его открытый ключ из файла authorized_keys

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