Come posso modificare il campo dei commenti di una chiave RSA (SSH)?


19

So che posso semplicemente aprire il pubkey e modificare il commento dopo la ==s, ma il campo del commento deciso al momento della creazione è memorizzato anche nella chiave privata? In tal caso, come posso cambiare quel campo senza generare una chiave completamente nuova da zero?


1
Vedi la risposta di @ jhcaiced di seguito; che apparentemente non funzionerà, ed è quello che temevo.
ELLIOTTCABLE

2
Vedi anche Possibile cambiare l'indirizzo e-mail in keypair? su ServerFault. La risposta breve è ssh-keygen -ccambia il commento.
jww

Risposte:


14

Mi sono imbattuto in questa domanda nella mia ricerca per cambiare il commento nella chiave ssh nella mia nuova installazione di Ubuntu.

Ho quindi fatto una ricerca nelle pagine man ( man ssh-keygen) e la risposta era proprio lì-

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.

Quindi, per me, tutto quello che dovevo fare era

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

Nota a margine: ssh-keygenpuò essere utilizzato per modificare la password utilizzata per proteggere il file chiave, inclusa la rimozione della password.


Sono stato in grado di modificare il commento delle mie chiavi private RSA e ED25519 con il comando. (La manpage sopra dice This operation is only supported for RSA1 keys)
GMaster

3

Ho appena fatto un piccolo test modificando la riga "Comment:" della mia chiave RSA privata e sembra che sia stato corretto alla creazione della chiave.

È una chiave RSA generata con Putty e dopo aver modificato il commento nella chiave, il passwd non ha funzionato, devo invertire la modifica con lo stesso commento originale affinché funzioni nuovamente.


1
Posso confermare questo. Avevo provato lo stesso prima e non potevo farlo modificando il testo. Ho finito per creare una nuova chiave importando gli stessi dettagli della chiave privata, modificando il commento e salvandolo di nuovo, utilizzando gli strumenti inclusi in putty.
Vijay,

1
man ssh-keygen -c Richieste di modifica del commento nei file di chiavi pubbliche e private. Questa operazione è supportata solo per le chiavi RSA1. Il programma richiederà il file contenente le chiavi private, la passphrase se la chiave ne ha una e il nuovo commento. Ho provato a creare una chiave RSA con -C per specificare un commento al momento della creazione. Non fa nulla. Ho un sacco di chiavi RSA che vorrei poter distinguere durante l'esecuzione ssh-add -l.
Michael,

Come ha scritto An Vad con una risposta diversa: puoi cambiare il commento con ssh-keygen -c -C "my new comment" -f ~/.ssh/my_ssh_key.
mpb,

3

Ho appena creato una chiave RSA con ssh-keygen -t rsa -b 4096, nessun passaggio, nessun commento (quindi commento standard). L'ho caricato su GitHub e poi ho cambiato il suo commento. Non è stato necessario un nuovo caricamento, la chiave ha funzionato prima e dopo la modifica e ha smesso di funzionare dopo la cancellazione da GitHub (anche se se fosse stata memorizzata nella cache e funzionasse solo a causa di ciò, non ho ancora testato).

Registro delle sessioni:

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.

Quindi, questo funziona per le chiavi archiviate in NUOVO FORMATO. Passaggi dettagliati qui, nella mia risposta ServerFault .

Tutte le operazioni sono state eseguite su OpenSSH ssh-keygen predefinito di Xubuntu 18.04.

La chiave privata cambierà in questo modo. Non a causa del suo commento, ma piuttosto a causa del cambiamento nel suo formato . Vedi il confronto qui su una chiave creata proprio per quel confronto.

confronto delle chiavi private - il formato è cambiato

Nota che per pub-key l'ho effettivamente rotto, quindi Meld mostra meglio cosa è cambiato: gli spazi sono stati cambiati con le interruzioni di riga (questo rompe il formato).

(rotto) confronto chiave pubblica, solo il commento è cambiato


Posso confermare che questo comando funziona con il mio tasto rsa2ssh-keygen -f ~/.ssh/mykey -c -C 'a new comment' -o
Felipe Alvarez,

0

Se si tratta della chiave generata da PuTTY (quando dice MAC non riuscita), probabilmente il modo migliore per cambiare commento è usare lo strumento puttygen.

mastice

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.