Passwortloses SSH-Login auf einen Remote-Server mit Visual Studio Code

Der folgende Artikel beschreibt, wie du dich mit einem Schlüssel und Visual Studio Code über das Branchenstandard-Netzwerkprotokoll SSH auf einem Remote-Server anmelden kannst, sodass du jedes Mal, wenn du dich verbinden willst, keinen Benutzer/kein Passwort mehr eingeben musst. Er wurde für/auf MacOS geschrieben, aber die Vorgehensweise sollte auf Linux gleich und auf Windows ähnlich sein.

Vorbereitung

Zunächst herunterladen, installieren und VS Code öffnen.

Dann installiere die Extension „Remote – SSH“, indem du zum Reiter Extensions wechselst, danach suchst und auf „Install“ klickst.

Spaß mit Schlüsseln

Als Nächstes öffnest du eine Terminal-Sitzung über die Option „New Terminal“.

Verbinde dich am Terminal-Prompt (normalerweise unten in deinem Fenster angezeigt) mit deinem Server, indem du die folgende Zeile eingibst und die Enter-Taste drückst.

ssh -p PORT USERNAME@SERVER

Deine Zeile könnte beispielsweise so aussehen: ssh -p 22 heinz@mydomain.com. Akzeptiere/bestätige alle Dialoge, zu deren Bestätigung du aufgefordert wirst, sowie die Eingabe des Passworts.

Verlasse die SSH-Sitzung einfach, indem du den folgenden Befehl ins Terminal eingibst:

exit

Als Nächstes erstellst du auf deinem lokalen PC einen Schlüssel für SSH (falls du noch keinen hast). Stelle sicher, dass du vorher wirklich den Server verlassen/getrennt hast:

ssh-keygen

Nach Abschluss kannst du den öffentlichen Schlüsselteil mit dem folgenden Befehl auf den Server kopieren:

ssh-copy-id -p PORT USERNAME@SERVER

Wenn du dich das nächste Mal per SSH auf dem Server anmeldest, wirst du nicht mehr nach dem Passwort gefragt, sondern der Schlüssel wird im Hintergrund automatisch verifiziert.

Die Umgebung einrichten

Also probieren wir es, indem wir uns im Terminal wieder auf dem Server anmelden (ssh -p PORT USERNAME@SERVER) und ein Workspace-Verzeichnis für die Dateien anlegen, die du später mit VS Code bearbeiten/kontrollieren willst.

mkdir DIRECTORYNAME

Der Verzeichnisname kann sein, was du bevorzugst, z. B. könnte mkdir data passend sein. Wechsle in dieses Verzeichnis mit dem Befehl:

cd DIRECTORYNAME

z. B. cd data. Drucke dann den vollständigen Verzeichnispfad mit:

pwd

Das Ergebnis wird etwas wie /home/heinz/data sein. Kopiere diesen Pfad in deine Zwischenablage oder notiere/merke ihn. Du bist jetzt mehr als 50 % fertig.

VS Code konfigurieren

Öffne den Reiter Remote SSH in VS Code und klicke bei SSH im Remote Explorer auf „+“.

Gib im neuen Prompt oben im Fenster denselben Befehl ein, den du vorher zum Verbinden mit deinem Server verwendet hast:

ssh -p PORT USERNAME@SERVER

Wähle die lokale SSH-Config-Datei aus, die aktualisiert werden soll; normalerweise ist der erste Vorschlag in Ordnung.

Nun solltest du im Remote Explorer die neue Verbindungsoption sehen, etwa:

Wenn sie nicht direkt angezeigt wird, klicke einfach den Aktualisieren-Button, wie oben rechts im Screenshot gezeigt. Klicke dann auf den „→“-Pfeil, um dich zu verbinden.

Wechsle abschließend zum Reiter File Explorer und klicke auf „Open Folder“. Am Prompt gibst du das Verzeichnis ein, das du vorher gemerkt oder kopiert hast, oder wählst es aus und klickst auf „OK“:

Falls du gefragt wirst, ob du den Autoren des Verzeichnisses vertraust, ergibt es Sinn, Ja zu wählen, denn du bist der Autor 🙂

Wir sind fertig. Du siehst höchstwahrscheinlich eine leere Ordnerstruktur, weil wir den Ordner gerade erst erstellt haben, und du kannst neue Dateien jeder Art erstellen, wie die README.md im nächsten Screenshot, und Ordner wie du willst.

Es ist auch möglich, Dateien per Drag-and-drop von deinem PC auf den Server zu kopieren, sowie Dateien/Ordner per Rechtsklick im VS-Code-File-Explorer herunterzuladen.

Ergebnis

Wenn du VS Code das nächste Mal öffnest, wird die Verbindung automatisch hergestellt. Falls du zwischen verschiedenen Umgebungen wechselst, kannst du immer zum Remote-Explorer-Reiter von VS Code zurückgehen und mit dem Server verbinden. Wähle für die Verbindung den Ordner und nicht den Server selbst aus, sonst wirst du im Reiter File Explorer wieder aufgefordert, ein Ordner auszuwählen.

Ich hoffe, dieses kurze Tutorial hat dir ein bisschen geholfen 🙂