Forum: PC Hard- und Software gitlab Zugriff über remote VSCode Fehler


von Johannes S. (Gast)


Lesenswert?

Auf einem Linux (Ubuntu) Rechner habe ich eine Entwicklungsumgebung für 
Cortex-M eingerichtet, VSCode und JLink Software für das Debuggen auf 
einem STM32 Nucleo. Das funktioniert lokal wunderbar, incl. Zugriff auf 
meinen heimischen gitlab Server.
Jetzt möchte ich das Ganze von einem remote Rechner aus machen. VSCode 
kann sich remote per SSH verbinden, ich kann das komplett als IDE nutzen 
incl. remote debugging.
Nur der Zugriff auf gitlab klemmt jetzt, beim push/pull gibt es einen 
Zugriff verweigert Fehler:
1
> git pull origin master
2
3
Permission denied, please try again.
4
Permission denied, please try again.
5
git@gitlab.fritz.box: Permission denied (publickey,password).
6
fatal: Could not read from remote repository.

Die ssh keys sind vorhanden, VSCode fragt mich aber nicht nach der 
Passphrase für den key. Ich habe schon reichlich gegoogelt, es hat evtl. 
was mit dem ssh-agent zu tun, aber eine Lösung habe ich nicht gefunden. 
In einer ssh kann ich git pull aufrufen und werde nach der Passphrase 
gefragt und der Befehl wird ausgeführt. Mit ssh-add kann ich die 
Indetität hinzufügen und git pull braucht nicht mehr die Passphrase. Das 
gilt aber nur temporär für die aktelle Session, beim nächsten ssh 
verbinden ist das ssh-add wieder nötig. Wie löst man das in VSCode?

von Εrnst B. (ernst)


Lesenswert?

ist der Key auf dem Rechner, der VSCode ausführt, auch für dein git 
freigeschaltet?

Falls ja könntest du es mit "ForwardAgent yes" (global oder in der 
~/.ssh/config, ggfs. auch nur für den einen Host) versuchen.

Dann hätte das git+ssh auf dem ubuntu-remote-vscode-rechner alle Keys im 
Zugriff, die am Arbeitsplatz-Rechner in den Agent geladen sind.

von Michael D. (nospam2000)


Lesenswert?

Schau mal hier
https://code.visualstudio.com/docs/remote/troubleshooting
unter "Setting up the SSH Agent"

von Johannes S. (Gast)


Lesenswert?

danke, habe es gerade selber hinbekommen:
der ssh-agent unter Windows (meinem Client) lief nicht. Das ist der 
'OpenSSH Authentication Agent' Dienst, der ist als Voreinstellung 
deaktiviert. Nach dem Start und ssh-add sind die Keys gespeichert. Das 
VSCode Remote Troubleshooting ist ein guter Tipp, hatte ich nicht 
gefunden.
Jetzt läuft alles wie im Kino, geniale Sache mit dem VSCode. Kompilieren 
ist um ein vielfaches schneller unter Linux wg. Dateisystem und per git 
habe die Quellen gleich und kann beliebig unter Windows oder Linux (oder 
Mac wenn ich einen hätte) arbeiten.

Εrnst B. schrieb:
> Falls ja könntest du es mit "ForwardAgent yes" (global oder in der
> ~/.ssh/config, ggfs. auch nur für den einen Host) versuchen.

das hatte ich auch gemacht, kann ich hoffentlich wieder auf default (war 
auskommentiert) zurückstellen.

von Johannes S. (Gast)


Lesenswert?

arrgh... heute das Gleiche auf einem zweiten Windows10 Rechner probiert, 
Fehler 'communication with agent failed'.

Lösung in https://github.com/PowerShell/Win32-OpenSSH/issues/1234 :
sc.exe create sshd binPath=C:\Windows\System32\OpenSSH\ssh.exe

der Rechner auf dem gestern schon lief hatte wahrscheinlich einen 
neueren Build. Irgendwie tut sich MS noch schwer mit der OpenSSL 
Software.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.