skopiuj klucze prywatne ssh na inny komputer


52

Potrzebuję użyć innego komputera, aby uzyskać dostęp do mojego serwera ssh. Wynika to z faktu, że ostatnio wdrożony VPN na mojej uczelni nie działa na moim obecnym komputerze i straciłem dostęp do serwera.

I ssh zaszyfrowane klucze ssh. Czy mogę skopiować te klucze na nowy komputer (na którym działa VPN). Próbowałem skopiować pliki id_rsai id_rsa.pubdo ~/.sshfolderu, ale nie rozpoznaje kluczy i nie ma monitu o podanie hasła w celu odszyfrowania kluczy.

EDYCJA: Nie mogę uzyskać dostępu do serwera, aby wygenerować nową parę kluczy dla nowego komputera i jestem poza krajem, więc nie mogę fizycznie uzyskać do niego dostępu.

Dzięki.


Czy id_rshliterówka jest „ ”?
ændrük

1
Możesz dowiedzieć się więcej na temat problemu, próbując ssh -v -i ~/.ssh/id_rsa ssh-server.
ændrük

próbowałem tego. Wydaje się, że wysyła klucze, ale nigdy nie prosi o hasło, aby je odszyfrować. Otrzymuję również dziwny ogólny komunikat „Roaming niedozwolony przez serwer”. Zgadnij, klucze prywatne po prostu nie są przeznaczone do kopiowania;). Wygląda na to, że będę musiał zaufać komuś, kto ma fizyczny dostęp, aby ręcznie zalogować się na moim serwerze i zmienić ustawienia ssh. Dzięki za pomoc.
benj

Klucze prywatne nigdy nie powinny być kopiowane! TO RYZYKO BEZPIECZEŃSTWA. Wygeneruj nowe klucze dla każdego nowego urządzenia !!!!
Ether

Odpowiedzi:


66

Sprawdź uprawnienia i własność pliku klucza prywatnego. Z podręcznika ,

Pliki te zawierają poufne dane i powinny być czytelne dla użytkownika, ale niedostępne dla innych (odczyt / zapis / wykonanie). ssh po prostu zignoruje plik klucza prywatnego, jeśli jest on dostępny dla innych.

Zazwyczaj kluczowe pliki powinny wyglądać tak,

$ ls -l ~/.ssh/id_rsa*
-rw------- 1 benj benj 1766 Jun 22  2011 .ssh/id_rsa
-rw-r--r-- 1 benj benj  388 Jun 22  2011 .ssh/id_rsa.pub

które możesz egzekwować poprzez:

$ chown benj:benj ~/.ssh/id_rsa*
$ chmod 600 ~/.ssh/id_rsa
$ chmod 644 ~/.ssh/id_rsa.pub

2
dzięki. Warto wiedzieć. Podczas kopiowania pliku na inny komputer wydaje się, że uprawnienia zmieniają się na tego użytkownika. Na wszelki wypadek uruchomiłem skrypty chmod i chown. Niestety nie pomogło mi to.
benj

@John ツ To może być dla mnie część problemu, ale zdawały się być inne problemy. W końcu udało mi się kogoś fizycznie zalogować do serwera i skonfigurować nowy klucz. Ale zaakceptuje to, ponieważ prawdopodobnie obejmuje kluczową kwestię.
benj

To działało dla mnie @benj.
Sinthia V

14

Spróbuj uruchomić się ssh-addprzed połączeniem SSH z serwerem - powinieneś zostać poproszony o podanie hasła, a następnie kolejne sshpołączenia mogą używać twojego klucza prywatnego.

ssh-addPolecenie dodaje klucze do środka klucza.


1
Nie sądzę, że to jest problem, ponieważ 1) klient SSH poradzi sobie bez agenta klucza funkcjonalnego, 2) serwer nie zareaguje komunikatem „niedozwolony roaming” i 3) klient ssh będzie miał swój własny komunikat o błędzie podczas rozmowy z kluczowym agentem nie udaje się. Uczyniłem moje myśli na ten temat odpowiedzią .
gertvdijk

To rozwiązało problem. Zobacz także dokumentację Github na ten temat .
Ionică Bizău

8

Zaszyfrowane klucze prywatne przechowują odpowiadający im klucz publiczny niezaszyfrowany . W ten sposób klient SSH może połączyć się ze zdalnym serwerem bez pytania o hasło (w tym momencie oferuje tylko część publiczną). Za każdym razem, gdy serwer akceptuje klucz publiczny, klient na twoim komputerze chce odszyfrować klucz prywatny i poprosi o podanie hasła.

Teraz, ilekroć serwer akceptuje połączenie tylko z określonego adresu IP, jest to odrzucane już w pierwszym kroku i wyjaśnia komunikat otrzymany z serwera „Roaming niedozwolony przez serwer”.

Więc przypuszczam, że twój serwer jest w jakiś sposób ograniczony, aby zezwalać tylko na określone adresy IP dla tego klucza. Możesz to zrobić na kilka sposobów, ale jest to powszechne w ~/.ssh/authorized_keys:

from="192.168.1.2" ssh-rsa AAAAB3NzaC[...]

Aby udowodnić, że możesz odczytać klucz publiczny z zaszyfrowanego klucza prywatnego bez hasła, uruchom:

ssh-keygen -y -f /path/to/private/key

1
Jest to dobry pomocny proces uzyskiwania odpowiedzi w przypadku problemów z połączeniem SSH. Dziękuję Ci.
Sinthia V
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.