Какие элементы влияют на пары ключей, генерируемые ssh-keygen?

Какие элементы влияют на пары ключей, генерируемые ssh-keygen?

Я использую ssh-keygen -t rsaдля генерации пар ключей RSA. Я вижу, что в id_rsa.pubфайле я вижу имя пользователя и имя хоста.

Но я хочу знать, какие элементы повлияют на пары ключей. Например, если я изменю IP хоста, нужно ли мне заново генерировать пары ключей? И имя хоста? Или даже переустанавливать операционную систему?

Когда следует повторно генерировать пары ключей?

решение1

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

В SSH ключ пользователя обычно используется для идентификации комбинации пользователя и исходной системы. Это означает, что ключ не является общим для пользователей в одной системе или одного и того же пользователя в нескольких системах.
Хотя это не техническое ограничение, так как вы можете нарушить любое из этих правил без проблем. Это просто хорошая практика безопасности.

В открытом ключе ( id_rsa.pub) последнее поле — это комментарий. ssh-keygenКоманда обычно помещает ваше имя пользователя и имя хоста в последнее поле. Это не служит никакой цели, кроме как комментарием для идентификации ключа. О том, почему она помещает имя пользователя и имя хоста, см. предыдущий абзац.

Чтобы напрямую ответить на ваш вопрос: «Когда мне следует повторно сгенерировать пары ключей?»:
вам следует повторно сгенерировать ключ, когда ключ был скомпрометирован и потенциально был получен кем-то другим. В это время вам также следует отозвать предыдущий открытый ключ из всех удаленных систем, которые доверяют ему (файлу authorized_keys).
Это буквально единственная причина. Если вы переустановите ОС, измените имя хоста и т. д., вам не нужно повторно создавать ключ. Хотя вы можете, если хотите.

решение2

Отrfc4716мы знаем, что user@hostname — id_rsa.pubэто всего лишь комментарий, он не влияет на содержимое пары ключей.

Я думаю, что имя пользователя — один из элементов, влияющих на содержимое, поскольку я использую двух пользователей для хранения разных пар ключей на одном и том же хосте :-)

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