Richten Sie von PuTTY in GitLab erstellte SSH-Schlüssel ein

Oct 06 2020

Ich habe mit PuTTYgen einen öffentlichen und einen privaten Schlüssel generiert und den öffentlichen Schlüssel zu meinem GitLab-Konto hinzugefügt. Wenn ich jedoch versuche, das Repository zu klonen, wird weiterhin ein Kennwort benötigt.

Ich habe die folgenden Anweisungen von dieser Seite gelesen

  1. Installieren Sie Putty und verwandte Dienstprogramme

  2. Legen Sie die Systemumgebungsvariable in Windows fest (Systemsteuerung \ System und Sicherheit \ System -> und klicken Sie im linken Bereich auf "Erweiterte Systemeinstellungen". Klicken Sie dann auf "Umgebungsvariablen"). GIT_SSH =% path_to_plink.exe% (Hinweis plink. exe wird überall dort eingesetzt, wo Sie Putty installiert haben.

  3. Generieren Sie einen ssh-Schlüssel mit puttygen.exe (ssh2-rsa, 4096, comment = GitLab, und legen Sie eine Passphrase fest).

  4. Fügen Sie den Schlüssel zu pageant.exe und den öffentlichen Schlüssel zu Ihrem GitLab-Profil hinzu

  5. Stellen Sie sicher, dass Sie eine neue Befehlsshell starten, damit git den Wert GIT_SSH erkennt

  6. Versuchen Sie diese beiden Befehle, um zuerst die Verbindung zu überprüfen. Dies sollte Ihnen ein Popup-Fenster geben, das die Verbindung authentifiziert

  7. setze Git putty [email protected]:% user% /% repo.git%

Verwendung:

  1. Starten Sie pagent.exe aus dem Putty-Ordner
  2. Schlüssel zu pageant.exe hinzufügen

Ich verstehe Schritt 5 immer noch nicht und in Schritt 6 sehe ich keine Shell-Befehle, um den Test durchzuführen.

Kann jemand helfen?

Aktualisieren:

Das Problem war, dass ich mein cmd nicht neu gestartet habe. Aber jetzt erhalte ich die folgende Meldung: Der Hostschlüssel des Servers wird nicht in der Registrierung zwischengespeichert. Sie können nicht garantieren, dass der Server der Computer ist, von dem Sie glauben, dass er es ist. Der Fingerabdruck des Servers ssh-ed25519 lautet: ssh-ed25519 255 d7: 0d: ca: f2: c1: 01: 46: 80: 68: 4c: 5d: e6: d4: 52: f9: 16 Wenn Sie diesem Host vertrauen, Geben Sie "y" ein, um den Schlüssel zum PuTTY-Cache hinzuzufügen und die Verbindung fortzusetzen. Wenn Sie die Verbindung nur einmal fortsetzen möchten, ohne den Schlüssel zum Cache hinzuzufügen, geben Sie "n" ein. Wenn Sie diesem Host nicht vertrauen, drücken Sie die Eingabetaste, um die Verbindung zu beenden. Schlüssel im Cache speichern? (j / n)

Und ich darf dort nichts tippen.

Antworten

1 VonC Oct 06 2020 at 11:31

Stellen Sie sicher, dass Sie eine neue Befehlsshell starten, damit git den Wert GIT_SSH erkennt

Geben Sie git bashdann " set|grep GIT_SSH"

Wenn das Ergebnis leer ist, hat die CMD-Sitzung, in der Sie Ihre Sitzung geöffnet haben, Ihre Windows-Benutzerumgebungsvariable nicht geerbt. Öffnen Sie eine neue CMD.

Aber ich würde Putty nicht empfehlen. Git für Windows wird mit openssh geliefert, und das sollte in einer Git-Bash-Sitzung ausreichen

ssh-keygen -t rsa 
<enter a passphrase>

Weitere Informationen finden Sie unter GitHub (dies gilt auch für GitLab). " Generieren eines neuen SSH-Schlüssels und Hinzufügen zum SSH-Agenten "

Das OP Petar Yakov meldet, dass das Passwort seines GitLab-Kontos im Credential Manager registriert werden muss.
Dann funktioniert der SSH-Zugriff.