
Ich glaube, ich habe meine SSH-Konfiguration durcheinandergebracht.
In letzter Zeit kann ich kein lokales Repository mehr klonen. Es scheint, als würde das Git-Repository sowohl den öffentlichen Schlüssel als auch das Passwort akzeptieren, aber anstatt mich eine der beiden Optionen wählen zu lassen, versucht es, eine Verbindung mit einem falschen RSA-Schlüssel herzustellen, was zu der folgenden Meldung führt:
Received disconnect from myRemoteComputer : Too many authentication failures for myUsername
fatal: Could not read from remote repository.
Dasselbe passiert, wenn ich per SSH auf diesen Computer zugreife.
$ssh -v myRemoteComputerIP
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/myUsername/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Offering RSA public key: myUsername@cvg04
Received disconnect from myRemoteComputerIP: Too many authentication failures for myUsername
Da läuft also etwas schief, da in letzter Zeit beide Befehle funktionierten. Ich müsste im Grunde Benutzernamen und Passwort angeben ssh
und git
verwenden, anstatt zufällig einen falschen „RSA-Schlüssel“ auszuwählen. Weiß jemand, wie man das repariert?
Außerdem habe ich ssh-add
vor kurzem einige Befehle ausgeführt, indem ich dem Rat eines Forums gefolgt bin, aber vielleicht ist das ein Teil des Problems …
Antwort1
Überprüfen Sie Ihre ~/.ssh/config
. Wenn Sie die Kennwortauthentifizierung verwenden möchten, können Sie sie dort wie folgt einrichten:
Host myRemoteComputerIP
PubkeyAuthentication no
Es wird nie versucht, bei diesem Host eine Authentifizierung mit öffentlichem Schlüssel durchzuführen.
Was ist, wenn ich mich einmal mit zwei verschiedenen Benutzernamen verbinden muss und dabei einen RSA-Schlüssel und zum anderen eine Benutzernamen-/Passwort-Authentifizierung verwende?
Sie können Aliase in folgenden Feldern verwenden ssh_config
:
Host alias1
Hostname myRemoteComputerIP
PubkeyAuthentication no
User user1
Host alias2
Hostname myRemoteComputerIP
# PubkeyAuthentication yes # is default
User user2
ssh alias1
und dann mit und verbinden ssh alias2
.
Antwort2
Klonen Sie mit https und es wird immer nach einem Passwort gefragt. Beispiel:
git clone https://github.com/my_company/myrepo.git