hasło klucza ssh działa w systemie windows, ale nie w Linuksie

Pracuję nad projektem w git. W systemie Windows używam rozszerzeń git do zarządzania tym projektem i dostępu do publicznego repozytorium, które mi dali .klucz ppk. Załadowałem go do git extension, z hasłem, które mi dali, i działa.

Teraz ustawiłem linuksową (ubuntu-32bit) maszynę wirtualną i chcę uzyskać dostęp również z tej Maszyny do repozytorium.

Z innego wątku, który widziałem na tej stronie, używam, do sklonowania repozytorium, następujące polecenie:

ssh-agent bash -c 'ssh-add /home/myHome/mykey.ppk; git clone git@serveraddress:project.git'

Wtedy powłoka każe mi wstawić hasło

Enter passphrase for /home/myHome/mykey.ppk:

Ale kiedy go wstawiam, mówi mi, że to złe hasło. Sprawdzałem to wiele razy i jestem pewien, że używam tego samego hasła, którego używam w systemie windows. Jak więc poprawnie używać klucza w Linuksie?

Z góry dziękuję za odpowiedzi.

Author: Jepessen, 2012-03-09

1 answers

Klient SSH Linuksa (zazwyczaj OpenSSH) nie może odczytać formatu PPK używanego przez klienta SSH systemu Windows Putty. Musisz najpierw przekonwertować podany klucz "PPK" na klucz OpenSSH. Zainstaluj "putty" na Linuksie i użyj narzędzia wiersza poleceń puttygen:

$ sudo aptitude install putty
$ mkdir -p ~/.ssh
$ puttygen ~/mykey.ppk -o ~/.ssh/id_rsa -O private-openssh

Wprowadź hasło, a otrzymasz klucz zgodny z OpenSSH w standardowej lokalizacji ~/.ssh/id_rsa. Następnie możesz po prostu użyć ssh-add (bez żadnych argumentów!) aby dodać ten klucz do agenta SSH.

Alternatywnie możesz użyć PUTTYgen program dostarczany przez putty w systemie Windows.

 59
Author: lunaryorn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-03-11 10:28:34