Назад | Перейти на главную страницу

Ssh использует закрытый ключ на 2 серверах

Machine1 имеет частную и публичную пару. Machine2 и machine3 имеют открытый ключ.

Я перехожу на machine2 с machine1 через ssh, а затем я хочу перейти на machine3 с machine2. Это как машина1 - ssh -> machine2 - ssh -> machine3 Как я могу это сделать?

Давайте проясним это: пользователь, с которым вы устанавливаете эти соединения, имеет пару открытый / закрытый ключ. В ~ / .ssh / authorized_keys на machine2 и machine3 есть копия открытого ключа подключающихся пользователей?

Если это так, то на машине1 вы должны запустить ssh-агент чтобы кэшировать учетные данные для вашего ключа. Вот как это выглядит, когда я настраиваю ssh-агент и кэширую свой ключ:

<tbielawa>@(expressomaker)[~] 04:15:33
$ eval `ssh-agent`
Agent pid 21725
<tbielawa>@(expressomaker)[~] 04:15:20
$ ssh-add
Enter passphrase for /Users/tbielawa/.ssh/id_rsa: 
Identity added: /Users/tbielawa/.ssh/id_rsa (/Users/tbielawa/.ssh/id_rsa)
<tbielawa>@(expressomaker)[~] 04:15:31
$ ssh-add -l
2048 5f:e0:9b:92:e4:80:7e:5e:c8:29:00:29:ae:ca:bd:58 /Users/tbielawa/.ssh/id_rsa (RSA)

(Вам нужно только запустить eval ssh-agent если он еще не запущен)

Затем, когда я устанавливаю SSH-соединения, я запускаю команду ssh с ForwardAgent такой вариант:

<tbielawa>@(expressomaker)[~] 04:17:58
$ ssh fridge -o "ForwardAgent yes"
Last login: Wed Nov  3 14:32:28 2010 from expressomaker

За исключением того, что я не делаю этого все время, мой файл ~ / .ssh / config настроен для автоматической пересылки моего агента:

<tbielawa>@(fridge)[~] 04:18:03
$ cat .ssh/config
Host *
     ForwardAgent yes

Если вы запустите свои команды ssh таким образом, ваш агент будет с вами на server. Затем вы можете ssh на server3, используя комбинацию открытого и закрытого ключей.

Использовать ssh-agent на machine1 и переадресации агента. Eсть отличный гид от Стива Фридла, который подробно это иллюстрирует.

Вы можете захотеть проверить Брелок, слишком.

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

Способ сделать это, создав пару ключей, а затем скопируйте открытый ключ на каждый сервер, к которому вы хотите получить доступ. Файл нужно скопировать в /home/user/.ssh/authorized_keys. Конечно, вам придется заменить /home/user с настоящим домашним каталогом пользователя.

Вот необходимые шаги:

1- Создайте пару ключей на машине1.

2- Скопируйте сгенерированный открытый ключ на machine2.

3- Создайте еще одну пару ключей на machine2.

4- Скопируйте сгенерированный открытый ключ на machine3.