Jak udostępnić jeden klucz pgp na wielu komputerach?

47

Jak mogę wyeksportować klucz pgp z jednego komputera i zaimportować go na inny? Jedynym sposobem, w jaki doszedłem (w koniku morskim) było zaimportowanie go do sekcji inne klucze .

Ale chcę użyć jednego klucza pgp z różnych maszyn. Czy łatwiej to rozwiązać za pomocą terminala i gpg ? Jestem trochę zdezorientowany konikiem morskim.

pschmidt
źródło

Odpowiedzi:

53

W terminalu uruchom następujące polecenie:

gpg --export-secret-key -a > secretkey.asc

W drugim systemie zaimportuj tajny klucz za pomocą:

gpg --import secretkey.asc

Alternatywnie, jeśli masz dostęp ssh do innego systemu, powinieneś być w stanie połączyć te dwie akcje w jedno polecenie:

gpg --export-secret-key -a | ssh othermachine gpg --import -

Gdy pliki kluczy osiągną swój cel, bezpiecznie je usuń :

shred secretkey.asc && rm secretkey.asc

lub

shred --remove secretkey.asc

Pamiętaj, aby zniszczyć i usunąć klucz zamiast zwykłego usuwania. Ponadto zamiast przenosić plik klucza za pomocą mv, skopiuj go, a następnie zniszcz i usuń oryginał. Te metody zapobiegną odzyskaniu klucza przez osobę atakującą za pomocą kontroli bitów niskiego poziomu.

James Henstridge
źródło
7
To jest właściwy sposób na skopiowanie klucza. Sugerowałbym jednak tworzenie podkluczy i kopiowanie ich zamiast tego. Główny komputer zachowa następnie klucz podstawowy, aby można było odwołać poszczególne podklucze na wypadek ich naruszenia. Zobacz na przykład wiki.debian.org/subkeys, jak to zrobić. (Mogę znaleźć czas na napisanie tutaj odpowiedzi.)
gertvdijk,
2
Musisz także zaufać zaimportowanemu kluczowi na komputerze docelowym, zanim będziesz mógł go użyć: stackoverflow.com/a/10718194/1610035
Andreas J.