Nein, die Schlüssel muss man händisch erstellen

ist aber nicht soooo schlimm...
Ganz grob (Ich gehe hier von einem Windows Desktop aus):
VS Code auf dem Windows Rechner installieren. Das Remote Development Plugin von Microsoft über den Marketplace installieren (das ist ein Metapaket, welches WSL, Dev Containers, Remote - SSH und Remote - Tunnels installiert)
Auf dem Zielsystem (openHAB Server) brauchen wir Schreibzugriff auf die openHAB spezifischen Dateien und Verzeichnisse. Am einfachsten erreichen wir das, indem wir den User openhab für den Zugriff verwenden.
Deshalb auf dem openHAB Server:
1. sicherstellen, dass das Home-Verzeichnis von
openhab nur für den User
openhab schreibbar ist. Aus dem Gedächtnis:
2. Dem User
openhab eine default Shell zuweisen (in /etc/passwd in der Zeile für den User openhab hinten /bin/false auf /bin/bash ändern)
3. als User openhab ein private/public key Paar generieren. Dafür am einfachsten als User openhab einloggen
Es bietet sich an, keine Passphrase zu setzen. Alternativ kann man auf dem Desktop PC später noch die Schlüsselverwaltung aktivieren, das ist allerdings... komplex...
Den generierten public key kopiert man anschließend in die authorized_keys:
Den private key kopiert man auf den Desktop PC, und zwar am besten in ein Verzeichnis C:\Users\<username>\.ssh\
Anschließend stellt man sicher, dass nur der User <username> Zugriff auf den Private key hat (Berechtigungen bearbeiten - Besitzrechte vererben abschalten - Besitzrechte für den User auf Vollzugriff, alle anderen User entfernen.
Nun kann man schon mal aus einem Windows Terminal heraus testen, ob der Zugriff funktioniert:
cmd.exe starten:
ssh openhab@openhabhost -i c:\users\<username>\.ssh\id_ed25519
Der host muss als known-host eingetragen werden (das sollte ssh nach Rückfrage automatisch erledigen)
Hat das soweit geklappt, kann man nun in VS Code den Zugriff auf den Host einrichten.
Ganz unten ganz links auf >< klicken und im aufpoppenden Menü (oben mitte) Verbindung mit Host herstellen... auswählen. Neuen SSH-Host hinzufügen... und dort die Befehlszeile von eben einfügen. Allerdings muss man hier unbedingt die Backslashes verdoppeln...

Alternativ kann man auch "SSH-Hosts konfigurieren... auswählen und den Eintrag als Text erzeugen, in dieser Form:
Code: Alles auswählen
Host Listeneintrag
HostName openhabhost (fqdn oder die IP des openHAB Hosts)
User openhab
IdentityFile C:\Users\<username>\.ssh\id_ed25519
Anschließend kann man über das gleiche Menü (Verbindung mit Host herstellen) den eben generierten Eintrag auswählen.
Bei der ersten Verbindung fordert VS Code dazu auf, die Identität zu bestätigen. Falls der Host bereits in known_hosts eingetragen ist, sollte dieser Schritt entfallen.
Bei der ersten Kontaktaufnahme mit dem Host installiert VS Code automatisch den Serverteil von VS Code auf dem Zielsystem. Leider landet das alles in einem Unterverzeichnis des Users openhab ($OPENHAB_USERDATA/.vscode/) aber irgendwas ist ja immer...
Die Plugins werden ebenfalls auf dem Remote System eingerichtet. Vorteil: Es ist egal, von welchem Desktop aus man auf das Zielsystem zugreift.
Also das openHAB Plugin und weiter nützliche Plugins remote installieren und passend konfigurieren (token für Zugriff auf openHAB generieren, im openHAB Plugin eintragen, Zugriff über localhost:8443 oder 8080 usw.)
Läuft der VS Code Remote Zugriff, kann man die gewünschten Ordner öffnen und hat umgehend Zugriff auf alle Dateien. Ich nutze hier /etc/openhab, /var/lib/openhab/ und /var/log/openhab/.
Kleiner Schönheitsfehler: im Verzeichnisbaum werden alle drei Verzeichnisse auf den letzten Namen gekürzt, man hat also drei Verzeichnisse openhab geöffnet, die sich nur anhand der Struktur voneinander unterscheiden lassen.
openHAB5.1.2 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime - LXC, 4 Kerne, 3 GByte RAM)
Hostsystem Proxmox VE 9.1.5 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte