Як я можу змінити поле коментаря ключа RSA (SSH)?


21

Я знаю, що я можу просто відкрити паскі і змінити коментар після ==s, але чи поле для коментарів вирішено при створенні, що зберігається і в приватному ключі? Якщо так, то як я можу змінити це поле без створення абсолютно нового ключа з нуля?


1
Дивіться відповідь @ jhcaiced нижче; що, мабуть, не вийде, чого я боявся.
ELLIOTTCABLE

2
Також див. Можливість змінити адресу електронної пошти в режимі клавіатури? на ServerFault. Коротка відповідь - це ssh-keygen -cзміни коментаря.
jww

Відповіді:


16

Я зіткнувся з цим питанням під час власного пошуку зміни коментаря в ключі ssh в моїй новій установці ubuntu.

Потім я здійснив пошук на сторінках man ( man ssh-keygen), і відповідь була прямо там -

ssh-keygen -c [-P passphrase] [-C comment] [-f keyfile]

-c      Requests changing the comment in the private and public key files.
        This operation is only supported for RSA1 keys and keys stored in the
        newer OpenSSH format.  The program will prompt for the file containing 
        the private keys, for the passphrase if the key has one, and for the
        new comment.

Отже, для мене все, що я повинен був зробити

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

Зі сторони примітки: ssh-keygenможна використовувати для зміни пароля, який використовується для захисту ключа, включаючи видалення пароля.


Мені вдалося змінити коментар як моїх приватних ключів RSA, так і ED25519 за допомогою команди. (Сторінка вказана вище This operation is only supported for RSA1 keys)
GMaster

3

Я щойно зробив невеликий тест, модифікувавши рядок "Коментар:" мого приватного ключа RSA, і він, здається, виправлений при створенні ключа.

Це ключ RSA, згенерований за допомогою Putty, і після зміни коментаря в ключі, passwd не працював, я повинен повернути редагування до того ж оригінального коментаря, щоб він знову працював.


1
Я можу це підтвердити. Я пробував те ж саме раніше, і я не міг зробити це шляхом редагування тексту. Я в кінцевому підсумку створив новий ключ, імпортувавши ті самі деталі приватного ключа, змінивши коментар та збереживши його знову, використовуючи інструменти, що входять до складу шпаклівки.
Віджай

1
man ssh-keygen -c Запрошує зміни коментаря у приватних та відкритих файлах ключів. Ця операція підтримується лише для клавіш RSA1. У програмі буде запропоновано файл, що містить приватні ключі, парольну фразу, якщо ключ є, та новий коментар. Я спробував створити ключ RSA за допомогою -C, щоб вказати коментар під час створення. Це нічого не робить. У мене дуже багато ключів RSA, які я хотів би мати можливість розрізнити під час роботи ssh-add -l.
Майкл

Як писав Ан Вад в іншій відповіді: коментар можна змінити ssh-keygen -c -C "my new comment" -f ~/.ssh/my_ssh_key.
mpb

3

Я щойно створив ключ RSA ssh-keygen -t rsa -b 4096, без пропуску, жодного коментаря (такий стандартний коментар). Я завантажив його в GitHub, а потім змінив його коментар. Не потрібно було повторного завантаження, ключ працював до та після зміни та припинив роботу після видалення з GitHub (хоча якщо він був кешований і працював лише завдяки цьому, я не перевіряв).

Журнал сесії:

lafk-T470% ssh-keygen -c -f ~/.ssh/id_rsa -C "a new comment"           
Comments are only supported for keys stored in the new format (-o).
lafk-T470% ssh-keygen -c -f ~/.ssh/id_rsa -C "a new comment" -o
Key now has no comment
The comment in your key file has been changed.
lafk-T470% vim ~/.ssh/id_rsa.pub                                       
lafk-T470% tail -1 ~/.ssh/id_rsa.pub                      
ssh-rsa  AAAAB3NzaC1yc2EAAAADAQABAAACAQCocnoRyM7Oy5XA0dLIaiHHQiPnimJvXifliTZI7OX5lqkACsZmUL/D7kUV2uPDyyPZ6lm0UGUHXhOw2QjStQ6ubPRFOKWQyNDkemaQAJtHPYTkT4pGHbsddyko3SRG0Vp4A9CSLRLJXVGuGn1UpfjB/AD0aUcLWVJdgWDuovR09t1YsHbakDpDh4a/2JS52Cvg6x9kEGakZK7ffUQZ64yZvqisEH//e7SbYtpHIp4ZdBMSIIsFIBWvqMXZowahvSMbV7MeLFuwt90dMOFiGJIe0n8oPt/ilQ0FTRcEP7UODyLKbESHkZqoGAHKeQ4ZMCCv7T00KtB98HvWylqvzHg2rIpLMHkVcRGjwlaZUlZB5Zxk6dAJ5HHg1irF+05UeIbQ9YQF/0x63KWQvreEcmLrkbnZ++XeF2ipE7M7CfkYhpJ9XbKZBG4pOQIqLio2rBV9c3+y+sPq4BABXdJKAnIX+h3kFrvOVA7Gy9/YxgQfCJ0ZSmaAV08uqMm91GYGRU9lt2Uf/ALqhW0rH93UWUj232w35rY8GtXucWAjtw3zi6QtZsIAStRzT3Br+Qrqv4MrKvEk+4rzswytaYjCGLrsMDYL7hI/YEJh9vv/v3wGvJGAqLDk1FeBL8tdwEMr1eM9JKl5gVkmBa4MdJkNMe4rHwUIidrW8LW2EEBY3DmDTQ== a new comment
lafk-T470% git clone git@github.com:GH_User/a-repository.git
Cloning into 'a-repository'...
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 8 (delta 0), reused 8 (delta 0), pack-reused 0
Receiving objects: 100% (8/8), done.

Отже, це працює для ключів, що зберігаються в НОВОМУ ФОРМАТІ. Етапи, детально описані тут, у моїй відповіді ServerFault .

Усі операції проводилися на OpenSSH ssh-keygen за замовчуванням Xubuntu 18.04.

Приватний ключ зміниться таким чином. Не через його коментар, а скоріше через зміну свого формату . Дивіться порівняння тут на ключі, створеному саме для цього порівняння.

порівняння приватного ключа - змінився формат

Зауважте, що для паб-ключа я його ефективно зламав, тому Meld краще показує, що змінилося: пробіли були змінені з розривами рядків (це порушує формат).

(зламане) порівняння відкритого ключа, змінився лише коментар


Я можу підтвердити, що ця команда працює з моїм ключем rsa2ssh-keygen -f ~/.ssh/mykey -c -C 'a new comment' -o
Феліпе Альварес

0

Якщо мова йде про ключ, згенерований PuTTY (коли він говорить про помилку MAC), то, мабуть, найкращим способом змінити коментар є використання інструменту puttygen.

шпаклівка

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.