Como posso alterar o campo de comentário de uma chave RSA (SSH)?

19

Sei que posso simplesmente abrir o pubkey e alterar o comentário após os ==s, mas o campo de comentário também é decidido na criação, armazenado na chave privada? Nesse caso, como posso alterar esse campo sem gerar uma chave totalmente nova do zero?

ELLIOTTCABLE
fonte
1
Veja a resposta de @ jhcaiced abaixo; aparentemente isso não vai funcionar, e era o que eu temia.
ELLIOTTCABLE
2
Consulte também Possível alterar o endereço de email no par de chaves? no ServerFault. A resposta curta é ssh-keygen -cmuda o comentário.
JWW

Respostas:

14

Me deparei com essa pergunta em minha própria pesquisa para alterar o comentário na chave ssh na minha nova instalação do ubuntu.

Eu então fiz uma pesquisa nas páginas de manual ( man ssh-keygen) e a resposta estava ali-

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.

Então, para mim, tudo que eu tinha que fazer era

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

Observação: ssh-keygenpode ser usada para alterar a senha usada para proteger o arquivo de chaves, incluindo a remoção da senha.

An Vad
fonte
Consegui alterar o comentário das minhas chaves privadas RSA e ED25519 com o comando (A página acima diz This operation is only supported for RSA1 keys)
GMaster
3

Acabei de fazer um pequeno teste modificando a linha "Comment:" da minha chave RSA privada e ela parece estar corrigida na criação da chave.

É uma chave RSA gerada com o Putty e, depois de modificar o comentário na chave, a senha não funcionou, preciso reverter a edição para o mesmo comentário original para que funcione novamente.

jhcaiced
fonte
1
Eu posso confirmar isso. Eu já havia tentado o mesmo antes e não consegui fazer isso editando texto. Acabei criando uma nova chave importando os mesmos detalhes da chave privada, alterando o comentário e salvando-o novamente, usando as ferramentas incluídas na massa.
Vijay
1
man ssh-keygen -c Solicita a alteração do comentário nos arquivos de chave pública e privada. Esta operação é suportada apenas para chaves RSA1. O programa solicitará o arquivo que contém as chaves privadas, a senha, se a chave tiver uma, e o novo comentário. Tentei criar uma chave RSA com -C para especificar um comentário no momento da criação. Não faz nada. Eu tenho muitas chaves RSA que gostaria de distinguir ao executar ssh-add -l.
Michael
Como An Vad escreveu em uma resposta diferente: você pode alterar o comentário com ssh-keygen -c -C "my new comment" -f ~/.ssh/my_ssh_key.
Mp4
3

Acabei de criar uma chave RSA com ssh-keygen -t rsa -b 4096, sem aprovação, sem comentário (comentário padrão). Fiz upload para o GitHub e depois mudei de comentário. Nenhum re-upload foi necessário, a chave funcionou antes e depois da alteração e parou de funcionar após a exclusão do GitHub (embora se tivesse sido armazenada em cache e funcionada apenas por causa disso, não testei).

Log da sessão:

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 [email protected]: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.

Portanto, isso funciona para chaves armazenadas em NEW FORMAT. Etapas detalhadas aqui, na minha resposta ServerFault .

Todas as operações foram realizadas no OpenSSH padrão ssh-keygen do Xubuntu 18.04.

A chave privada será alterada dessa maneira. Não devido ao comentário, mas devido a alterações no formato . Veja a comparação aqui em uma chave criada apenas para essa comparação.

comparação de chave privada - o formato mudou

Observe que, para o pub-key, eu efetivamente o quebrei, para que o Meld mostre melhor o que mudou: os espaços foram alterados com quebras de linha (isso quebra o formato).

comparação de chave pública (quebrada), apenas o comentário foi alterado

LAFK diz Restabelecer Monica
fonte
Posso confirmar que este comando funciona com a minha chave RSA2ssh-keygen -f ~/.ssh/mykey -c -C 'a new comment' -o
Felipe Alvarez
0

Se é sobre a chave gerada pelo PuTTY (quando diz que o MAC falhou), provavelmente a melhor maneira de alterar o comentário é usar a ferramenta puttygen.

massa de vidraceiro

Máxima
fonte