Używam 4096 bajtowego klucza RSP PGP; skoro SSH korzysta również ze standardu RSA, czy w ogóle możliwe jest użycie klucza PGP jako klucza SSH bez instalowania dodatkowego oprogramowania na serwerze (i tak mało, jak to możliwe na kliencie)?
Istnieje kilka sposobów, które mogą działać lub nie:
gpg2
na Debianie jest wyposażony w gpgkey2ssh
narzędzie i gpg-agent
może również działać jako agent ssh, ale nie mogłem wymyślić, jak ssh użyje klucza do uwierzytelnienia.Dzięki informacjom zawartym w odpowiedziach na to pytanie oraz przy pomocy listy mailingowej gnupg-users mogłem dowiedzieć się, jak używać mojego klucza GPG do uwierzytelniania SSH. Można to zrobić na kilka sposobów.
Napisałem blog na temat niektórych możliwych rozwiązań: http://budts.be/weblog/2012/08/ssh-authentication-with-your-pgp-key
Podsumowując: Albo używasz GnuPG 2.1, który jest obecnie w fazie beta. Korzystając z tej wersji, możesz po prostu uruchomić gpg-agent z opcją --enable-ssh-support i dodać klucz dla twojego klucza GPG (lub podklucza) do ~ / .gnupg / sshcontrol.
Kiedy używasz bieżącej stabilnej wersji GnuPG (2.0.x), możesz użyć monkeysphere, aby dodać swój klucz do gpg-agent (ponownie, po uruchomieniu gpg-agent z opcją --enable-ssh-support).
Możliwe jest również użycie kluczy GNOME (lub nawet zwykłego agenta ssh) za pomocą monkeysphere. Jedynym problemem w tym przypadku jest to, że będziesz musiał ponownie dodać swój klucz przy ponownym logowaniu (do Gnome lub XFCE). Aby rozwiązać ten problem, możesz ręcznie wyeksportować swój klucz i przekonwertować go.
Ten dokument pokazuje, jak to zrobić na kliencie SSH.com; Nie jestem pewien, czy działa na OpenSSH, ale może warto spróbować.