Ich richte ein neues Ubuntu-System (12.04.2 LTS) für die Rails-Entwicklung ein und wollte einen verschlüsselten privaten SSH-Schlüssel gemäß diesem Artikel verwenden. Ich kann ein Standard-SSH-Schlüsselpaar mithilfe der Anweisungen auf GitHub einrichten und alles funktioniert einwandfrei. Wenn ich jedoch den Anweisungen im ersten Artikel folge, kann ich mich nicht mehr mit SSH anmelden. Stattdessen wird die Fehlermeldung "Agent hat Fehler beim Signieren zugegeben" angezeigt mit dem Schlüssel. " Ich habe einen Fehler gefunden (Link b / c mit geringer Reputation, # 328127, kann nicht gepostet werden), der möglicherweise damit zusammenhängt. Ich werde nicht nach meiner Passphrase für den privaten Schlüssel gefragt, daher könnte die Tatsache, dass ich den privaten Schlüssel nach der Erstellung geändert habe, das Problem sein. Der Versuch, den neuen Schlüssel nur manuell hinzuzufügen, ssh-add
führt dazu, dass der Fehler zweimal zurückgegeben wird. Ich bin mir nicht sicher, wie ich einstellen soll$SSH_AUTH_SOCK
auf Null, sonst würde ich das auch versuchen. Jede Hilfe wäre sehr dankbar, danke!
7
Antworten:
Das Deaktivieren von SSH_AUTH_SOCK ist eine Problemumgehung. Dadurch wird jedoch der ssh-Agent deaktiviert, den einige Benutzer möglicherweise noch verwenden möchten.
Es scheint, dass ssh-agent nichts mit dem privaten Schlüssel signieren kann, da es ihn nicht richtig entschlüsselt, wenn dieser Schlüssel automatisch zum Schlüsselbund hinzugefügt wird.
Wenn man die Standard-Identitätsdatei id_rsa in ~ / .ssh generiert oder einen privaten Schlüssel zusammen mit seinem öffentlichen Schlüssel in ~ / .ssh speichert, fügt ssh-agent dies automatisch seinem Schlüsselbund hinzu. Dabei wird jedoch keine Passphrase abgefragt, der Schlüssel wird nie entschlüsselt.
Die Lösung besteht darin, den Schlüssel manuell hinzuzufügen. Entfernen Sie alle mit pkcs # 8 verschlüsselten Schlüssel mit ssh-add -D vom ssh-agent und verschieben Sie private + öffentliche Schlüsseldateien aus ~ / .ssh. Neustart oder ssh-agent -k, dann verschieben Sie Ihren pkcs # 8-verschlüsselten PRIVATE-Schlüssel zurück nach ~ / .ssh. Mit ssh-add wird man zur Eingabe der Entschlüsselungspassphrase aufgefordert. ssh-agent kann jetzt auf den unverschlüsselten privaten Schlüssel zugreifen und damit Sachen damit signieren.
(über Damon Dransfeld )
quelle
Entschuldigung für die schnelle Antwort, das
$SSH_AUTH_SOCK
Update hat bei mir funktioniert. Ich habe Anweisungen in einem anderen Bug- Thread gefunden. Falls jemand anderes feststeckt, wirdexport SSH_AUTH_SOCK=0
das Problem durch Eingabe behoben. Ich hoffe, das hilft!quelle
Wenn Sie es vorziehen, können Sie auch den GNOME SSH Key Agent durch den von OpenSSH bereitgestellten ersetzen und dann alle Ihre Schlüssel erneut hinzufügen, wie in diesem Artikel beschrieben .
quelle