Можно ли изменить адрес электронной почты в паре ключей?

134

Я создал пару ключей RSA, которую использовал для SSH, и в нее входит мой адрес электронной почты. (В конце открытого ключа.)

Теперь я изменил свой адрес электронной почты.

Можно ли изменить адрес электронной почты на ключе, или это часть ключа, и мне нужно будет создать новый?

Рам Рахум
источник

Ответы:

172

Я создал пару ключей RSA, которую использовал для SSH, и в нее входит мой адрес электронной почты. (В конце открытого ключа.)

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

ssh-rsa AAAAB3N....NMqKM= this_is_a_comment

Когда я создаю свои ключи с помощью ssh-keygen, я обычно использую такую ​​команду, чтобы задать другой комментарий. Я не думаю, что имя пользователя @ host очень полезно. Вы можете написать любой комментарий, который вам понравится, который будет полезен вам и любым другим администраторам, чтобы помочь определить, кому принадлежит ключ.

ssh-keygen ... -C YYYYMMDD_surname_givenname
Zoredache
источник
5
Так счастлив, что мне не нужно менять ключи ...
Рам Рахум
Я счастлив осознавать, что мне не нужно использовать мой адрес электронной почты. Есть идеи, почему вы хотите добавить комментарий к ключу? Может быть, я мог бы просто уйти с сайта, на котором он используется, вместо моей электронной почты.
leetNightshade
Ну, я хочу (требую) комментарии к своим системам, потому что есть 8 сетевых специалистов и большое количество систем, которые используют ключ для автоматизированных задач. Мой типичный файл author_keys содержит около 10-15 ключей. Комментарии там, чтобы люди узнали, к чему принадлежит каждый ключ. В любом случае, комментарии помогут вам легче управлять ключами. Вы можете использовать их, как вам нравится.
Зоредаче
2
Поскольку комментарии всегда являются последним элементом в authorized_keysфайле, пробелы разрешены, поэтому вам не нужно использовать подчеркивание.
IQAndreas
@ IQAndreas вы правы, конечно, но я также использую этот комментарий в нескольких других местах, где это имеет значение. Например, имя моего комментария совпадает с именем моего ключа, поскольку оно хранится в моем / .ssh каталоге. Я знаю, что в файлах тоже разрешены пробелы, но их использование упрощает обращение к моему файлу из Cli.
Зоредаче
18

Вы можете изменить комментарий для ключей RSA1, используя ssh-keygen -c.

из справочной страницы ssh-keygen:

 -c      Requests changing the comment in the private and public

ключевые файлы. Эта операция поддерживается только для ключей RSA1. Программа запросит файл, содержащий закрытые ключи, парольную фразу, если ключ есть, и новый комментарий.

Таким образом, чтобы изменить комментарий ключа, расположенного по адресу ~/.ssh/some_key, используйте следующую команду:

ssh-keygen -c -f ~/.ssh/some_key -C "my new comment"

Где -fопция сопровождается ключом, который вы хотите изменить, и -Cсопровождается новым комментарием.

dmourati
источник
7
ssh-keygen -c -f id_fooвозвращаетсяComments are only supported for RSA1 keys.
Эдвард Фальк
+1 , это также работает с ключами OpenSSH ed25519. Ключи ed25519 полностью закодированы в Base64. Комментарий не может быть удален с помощью текстового редактора.
11

Начиная с OpenSSH 6.5 , работает со всеми типами ключей, не только с RSA1:

ssh-keygen -f ~/.ssh/keyfilename -o -c -C "here goes your comment"

Параметры команды объяснили:

  • -f: файл закрытого ключа
  • -o: преобразовать закрытый ключ из PEM в новый формат OpenSSH
  • -c: изменить комментарий в файлах с закрытым и открытым ключами
  • -C: текст комментария

Смотрите также: ssh-keygen(1)справочная страница (текущая)

Маленький Древний Лес Ками
источник
Спасибо @AntoineCotten - будет использовать ваши изменения в качестве ссылки для будущих ответов. :-)
Маленький Древний Лес Ками