Общий процесс состоит в том, чтобы сгенерировать пару открытого и закрытого ключей и загрузить открытый ключ на сервер для соединения SSH.
Затем, если мне нужно управлять большим количеством серверов, я должен:
ИЛИ
Я лично считаю, что первый вариант достаточно хорош с точки зрения безопасности. Я прав?
Спасибо.
Общий ответ заключается в том, что вы, вероятно, захотите разместить один и тот же личный открытый ключ на всех серверах / учетных записях, на которых вы хотите войти. Для всех практических целей получить закрытый ключ из соответствующей открытой половины более или менее невозможно.
Тогда есть множество возможных исключений.
Хотя обычно это хорошее правило - защищать парольную фразу закрытого ключа, которая может быть менее выполнима при выполнении определенных автоматических задач. Для этой цели вам также может понадобиться отдельная пара ключей с незашифрованным закрытым ключом для использования с этими определенными (надеюсь, ограниченными) учетными записями.
Предполагая, что вы в основном подключаетесь к достаточно современным серверам, ваш личный ssh-ключ может быть типа ed25519. В этом случае по соображениям совместимости вам также может понадобиться вторичная пара ключей типа RSA, чтобы иметь возможность входить на серверы, на которых работает более старая версия OpenSSH. За исключением того, что в таком случае, вероятно, будет достаточно полностью перейти на RSA.
Если вы часто используете пересылку ssh-агента, теоретически выгодно использовать отдельные пары ключей, ограничивая ущерб, который может нанести злонамеренный сервер. За исключением того, что я полагаю, что на практике это быстро становится беспорядочным. Наверное, тогда лучше просто держаться подальше от переадресации агентов.