Короткий ответ

Короткий ответ

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

мой вопрос,

Вместо того, чтобы создавать пары ключей на стороне клиента, можем ли мы сгенерировать пары ключей на сервере (к которому мы хотим подключиться без пароля от клиента), поместив открытый ключ сервера на стороне клиента?

Если мы можем это сделать, то какова процедура, кто-нибудь может объяснить?

решение1

Короткий ответ

НЕТ.

Длинный ответ

Вы можете использовать немного публично известной информации (открытый ключ), чтобы доказать, почему вы. Более того. Вы не можете использовать ключ сервера: вы это вы, он это сервер.

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

Более длинный ответ

Однако если я попытаюсь разобрать то, что вы пытаетесь сделать. Я вижу, что вы пытаетесь сделать это более простым для администрирования. Так какие у вас есть варианты?

  • Возьмите все открытые ключи пользователя и скопируйте их на сервер. Они могут быть в одном аккаунте или во многих.
  • Дайте всем пользователям один и тот же закрытый ключ. (Возможно, это то, о чем вы пытались подумать.) Таким образом, сервер будет иметь один открытый ключ. Однако нет способа отличить пользователей друг от друга. Теперь есть способ отозвать ключ (если пользователь его потеряет), не отзывая его для всех.
  • Пусть системный администратор создаст публичные и личные ключи для пользователей. Затем вам нужно будет безопасно передать личный ключ пользователям (например, отнести ноутбуки в офис ИТ-поддержки и установить ключ). Также будет небезопасно для пользователя использовать этот ключ для других целей (поскольку вы не должны доверять ИТ-поддержке то, что их не касается).

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