Mudei para outro Macbook. Por causa dos SSDs caros e do tamanho do disco muito menor, e porque eu queria começar do zero com esta instalação, não consegui transferir a pasta do usuário. Eu tenho o disco antigo em um gabinete externo conectado e esqueci de exportar duas chaves privadas. Gostaria de restaurá-los do disco externo ou do Time Machine.
Onde posso encontrar as chaves privadas do GPG Tools para exportá-las ou copiar toda a pasta GPG Tools?
Responder1
Por padrão, os chaveiros GnuPG são armazenados na pasta (oculta) ~/.gnupg
; em outras palavras, a .gnupg
pasta em seu diretório inicial. Você pode simplesmente copiar a pasta inteira para a nova máquina. Se o GnuPG não funcionar corretamente posteriormente ou mostrar alguma mensagem de erro indicando permissões quebradas, certifique-se de assumir a propriedade posteriormente (mesmo que seu nome de usuário seja o mesmo, os IDs internos podem ser diferentes) executando o seguinte comando no aplicativo Terminal (é irá consultar sua senha de usuário):
sudo chown -R $USER:staff ~/.gnupg
Alternativamente, você pode exportar suas chaves secretas usando o
gpg --export-secret-keys [key-id] >secret-keys.gpg
comando. Como você deseja recuperar as chaves do seu disco antigo, conecte-o ao seu computador. Para trabalhar no chaveiro GnuPG do disco antigo, use a --homedir
opção, que resultará em algo como
gpg --homedir /Volumes/[old-disks-name]/Users/[username]/.gnupg --list-secret-keys
para listar as chaves secretas disponíveis e
gpg --homedir /Volumes/[old-disks-name]/Users/[username]/.gnupg --export-secret-keys [key-id] > secret-keys.gpg
para exportá-los. Você também poderá importá-los diretamente para o seu novo chaveiro do GnuPG em vez de armazená-los em um arquivo intermediário (observe o --homedir
parâmetro ausente na chamada do GnuPGdepoiso cano):
gpg --homedir /Volumes/[old-disks-name]/Users/[username]/.gnupg --export-secret-keys [key-id] | gpg --import
Atualização para 2019/macOS Catalina:
Os backups da máquina do tempo podem ser montados, mas não podem ser modificados no local. O que significa que um chown irá falhar e que você não pode usar a --homedir
opção com gpg sem obter um fluxo disto:
gpg: failed to create temporary file '/Volumes/<Backup Drive>/Backups.backupdb/<Compute Name>/Latest/Macintosh HD/Users/<name>/.gnupg/': Permission denied
gpg: can't connect to the agent: Permission denied
O chown irá falhar com um fluxo de mensagens como este:
$ sudo chown -R user:staff .gnupg
chown: .gnupg/tofu.db: Operation not permitted
chown: .gnupg/trustdb.gpg: Operation not permitted
chown: .gnupg: Operation not permitted
Copie a pasta .gnupg do backup do Time Machine, faça chown e veja/extraia as chaves privadas como acima:
$ mkdir ~/gpg_recovery
$ cp -r /Volumes/<Backup Drive>/Backups.backupdb/<Compute Name>/Latest/Macintosh HD/Users/<name>/.gnupg ~/gpg_recovery/
$ cd ~/gpg_recovery/
$ sudo chown -R $USER:staff .gnupg
Password:
$ gpg --homedir ~/gpg_recovery/.gnupg --list-secret-keys
$ gpg --homedir ~/gpg_recovery/.gnupg --export-secret-keys | gpg --import
gpg: key xxxxxxxxxxxxxxxx: public key "xxxxxxxxxxxxxxxxxxxxxxx" imported
gpg: key xxxxxxxxxxxxxxxx: secret key imported
gpg: Total number processed: 1
gpg: imported: 1
gpg: secret keys read: 1
gpg: secret keys imported: 1
Responder2
janelas
Em sistemas Windows você pode usar um software comoGpg4win. Neste caso você pode migrar suas chaves (privadas) copiando os seguintes arquivos para o seu novo computador:
- Arquivo
%AppData%\gnupg\pubring.kbx
- Arquivo
%AppData%\gnupg\trustdb.gpg
- Pasta inteira
%AppData%\gnupg\private-keys-v1.d
Para listar suas chaves locais reconhecidas (instaladas) atuais, use gpg --list-secret-keys --keyid-format LONG
. Testado com gpg (GnuPG) 2.3.4 (2021) instalado viaGpg4win4.0.0.
Responder3
Uma pequena adição à resposta de @ jens-erat:
Exportar para um arquivo:
gpg --output private_keys.backup --armor --export-secret-keys
Importação SSH
gpg --export-secret-key SOMEKEYID | ssh othermachine gpg --import
referência:Como exportar uma chave privada e uma chave pública GPG para um arquivo