VRAMfarm-Logo VRAMfarm
DE
Registrieren

12. November 2026 · VRAMfarm-Team

Per SSH unter Windows 10 und 11 auf einen GPU-Server: Schlüssel, Verbindung, Fehler

Ein Windows-Laptop mit geöffneter PowerShell, per Schlüssel mit einem GPU-Server verbunden: wie Sie sich unter Windows per SSH mit einem GPU-Server verbinden

Windows 10 und 11 enthalten bereits denselben ssh-Client, mit dem auch die Anleitungen für Mac und Linux arbeiten, PuTTY brauchen Sie also nicht. Bis Sie auf einem GPU-Server sind, vergehen fünf Befehle in PowerShell und etwa fünf Minuten: prüfen, ob ssh vorhanden ist, einen Schlüssel erstellen, die .pub-Datei kopieren, sie ins Dashboard einfügen und den Verbindungsbefehl aus Meine Server ausführen. Die meisten Fehler „Permission denied“ unter Windows gehen auf drei Fehler zurück, und alle drei finden Sie weiter unten.

Wenn Sie SSH lieber gar nicht anfassen wollen, springen Sie zum Abschnitt über Jupyter: Jeder Server hat auch ein Terminal im Browser.

Prüfen, ob OpenSSH installiert ist

Öffnen Sie PowerShell (Startmenü, „PowerShell“ eintippen) oder Windows Terminal. Führen Sie aus:

ssh -V

Sie sollten eine Versionszeile wie OpenSSH_for_Windows_9.5 sehen. Windows 10 seit den Updates von 2018 und jeder Build von Windows 11 liefern den Client eingeschaltet aus.

Erscheint „ssh is not recognized as an internal or external command“, installieren Sie ihn: in aktuellen Builds von Windows 11 unter Einstellungen → System → Optionale Features (unter Windows 10 und älteren Builds von Windows 11 unter Einstellungen → Apps → Optionale Features) → Feature hinzufügen (oder Features anzeigen) → OpenSSH-Client. Schließen Sie PowerShell, öffnen Sie es neu und führen Sie ssh -V noch einmal aus.

Die Befehle in dieser Anleitung sind für PowerShell. Sie funktionieren auch in Windows Terminal, das standardmäßig PowerShell öffnet. Die alte Eingabeaufforderung (cmd) führt ssh ebenfalls aus, aber die Befehle zum Kopieren des Schlüssels sind dort anders; wo es darauf ankommt, steht die cmd-Variante dabei.

Schlüssel erstellen und die .pub-Datei finden

Prüfen Sie zuerst, ob Sie schon einen Schlüssel haben:

dir $env:USERPROFILE\.ssh\*.pub

Zeigt die Liste id_ed25519.pub, haben Sie einen; weiter mit dem nächsten Abschnitt. Steht dort „Cannot find path“, erstellen Sie einen Schlüssel:

ssh-keygen -t ed25519

Drücken Sie dreimal Enter: Behalten Sie den vorgeschlagenen Speicherort und lassen Sie die Passphrase leer, wenn Sie keine wollen. Erscheint die Frage „already exists. Overwrite (y/n)?“, antworten Sie mit n. Sie haben bereits einen Schlüssel, und wenn Sie ihn überschreiben, funktioniert er überall dort nicht mehr, wo Sie ihn sonst nutzen.

Der Schlüssel besteht aus zwei Dateien in C:\Users\<your name>\.ssh\:

Datei Was sie ist Was Sie damit tun
id_ed25519 Privater Schlüssel Bleibt auf Ihrem Computer. Fügen Sie ihn nirgends ein
id_ed25519.pub Öffentlicher Schlüssel Diese Datei kommt ins Dashboard

Um den Ordner zu sehen, führen Sie explorer $env:USERPROFILE\.ssh aus. Vielleicht fällt Ihnen auf, dass Windows id_ed25519.pub mit einem Symbol von Microsoft Publisher und dem Typ „Microsoft Publisher-Dokument“ anzeigt. Das ist nur Windows, das aus der Endung .pub etwas errät. Doppelklicken Sie die Datei nicht. Rechtsklick → Öffnen mit → Editor, oder kopieren Sie sie einfach aus PowerShell:

Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub | Set-Clipboard

In der Eingabeaufforderung lautet derselbe Befehl type %USERPROFILE%\.ssh\id_ed25519.pub | clip. In der Zwischenablage liegt jetzt eine Zeile, die mit ssh-ed25519 beginnt, gefolgt von einer langen Zeichenkette und dem Namen Ihres Computers.

Schlüssel einfügen und verbinden

Öffnen Sie im Dashboard Einstellungen → Serverzugang → Öffentlicher SSH-Schlüssel, fügen Sie die Zeile ein und klicken Sie auf Schlüssel speichern. Der Schlüssel wird jedem neuen Server und bereits laufenden Servern hinzugefügt. Das machen Sie einmal; derselbe Schlüssel funktioniert für jeden Server, den Sie später starten.

Öffnen Sie jetzt Meine Server, suchen Sie Ihren laufenden Server und kopieren Sie seinen SSH-Befehl. Er sieht so aus, mit Ihrem eigenen Port:

ssh -p 31001 root@vramfarm.com

Fügen Sie ihn in PowerShell ein (in den meisten Windows-Terminals fügt ein Rechtsklick ein) und drücken Sie Enter. Bei der ersten Verbindung fragt SSH Are you sure you want to continue connecting (yes/no/[fingerprint])?. Tippen Sie yes. Sie sind jetzt als root auf dem Server. Prüfen Sie die Karte:

nvidia-smi

Die Ausgabe zeigt die GPU, ihren Speicher und die Treiberversion. Wenn Sie einen bestimmten PyTorch-Build installieren wollen, erklärt der Ratgeber zu Treiber und CUDA, wie Sie diese Zeile lesen. Mit exit verlassen Sie den Server. Jeder Server hat seinen eigenen Port, der Befehl ändert sich also bei jedem Start; der unter Meine Server ist immer der aktuelle.

Die vollständige Schritt-für-Schritt-Anleitung für Mac und Linux, mit denselben Schritten nebeneinander, finden Sie in der Anleitung zum SSH-Schlüssel.

„Permission denied (publickey)“ und andere Fehler unter Windows

Permission denied (publickey), oder es wird ein Passwort verlangt

Der Server hat Ihren Schlüssel nicht akzeptiert. Die Server haben kein Passwort, eine Passwortabfrage bedeutet also dasselbe. Unter Windows ist es fast immer einer dieser Fälle:

  1. Es wurde das Falsche eingefügt. Vergleichen Sie die Zeile in den Einstellungen mit Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub. Beginnt das Eingefügte mit -----BEGIN OPENSSH PRIVATE KEY-----, ist es Ihr privater Schlüssel: Löschen Sie ihn aus dem Feld und fügen Sie stattdessen die .pub-Zeile ein.
  2. Die Zeile wurde umbrochen. Beim Kopieren aus dem Editor mit Zeilenumbruch oder aus einer E-Mail können Zeilenwechsel hineingeraten. Der Schlüssel muss eine einzige, ununterbrochene Zeile sein.
  3. Der Schlüssel heißt anders. Haben Sie ihn als gpu_key gespeichert oder in PuTTYgen erstellt, findet ssh ihn nicht von selbst. Geben Sie ihn an: ssh -i $env:USERPROFILE\.ssh\gpu_key -p 31001 root@vramfarm.com. Eine .ppk-Datei aus PuTTY funktioniert mit diesem Befehl überhaupt nicht; siehe die FAQ unten.

Haben Sie beim Erstellen des Schlüssels eine Passphrase festgelegt, fragt SSH mit den Worten Enter passphrase for key danach. Das ist das Passwort Ihres Schlüssels, nicht des Servers.

WARNING: UNPROTECTED PRIVATE KEY FILE

SSH lehnt einen privaten Schlüssel ab, den andere Windows-Benutzer lesen können. Das passiert, wenn die Datei von einem anderen Computer oder aus einem freigegebenen Ordner kopiert wurde. Setzen Sie die Berechtigungen so, dass nur Sie die Datei lesen können:

icacls $env:USERPROFILE\.ssh\id_ed25519 /inheritance:r /grant:r "$($env:USERNAME):(R)"

REMOTE HOST IDENTIFICATION HAS CHANGED

Server kommen und gehen, und ein Port, den Sie letzte Woche genutzt haben, kann jetzt zu einem anderen Server gehören. Ihr Computer erinnert sich an den alten und warnt Sie. Entfernen Sie den alten Eintrag für diesen Port und verbinden Sie sich erneut:

ssh-keygen -R "[vramfarm.com]:31001"

Connection refused oder Connection timed out

Refused bedeutet meist, dass der Server noch startet oder schon gestoppt ist: Warten Sie unter Meine Server auf den Status Läuft. Timed out in einem Firmen- oder Hochschulnetz bedeutet oft, dass das Netz ausgehende Verbindungen zu ungewöhnlichen Ports sperrt. Zur Bestätigung probieren Sie einen Hotspot am Handy. Liegt es daran, nutzen Sie das Jupyter-Terminal weiter unten, das über normales HTTPS in Ihrem Browser läuft.

Die Passphrase des Schlüssels wird jedes Mal abgefragt

Lassen Sie sie sich vom ssh-agent von Windows merken. In einer PowerShell, die Sie als Administrator geöffnet haben:

Get-Service ssh-agent | Set-Service -StartupType Automatic
Start-Service ssh-agent
ssh-add $env:USERPROFILE\.ssh\id_ed25519

Ganz ohne SSH: das Terminal in Jupyter

Sie können Schlüssel auch ganz weglassen. Klicken Sie unter Meine Server auf Jupyter öffnen, dann auf File → New → Terminal. Sie bekommen eine Shell als root auf demselben Server, im Browser, ohne Schlüssel und ohne Client-Software. Alles in dieser Anleitung, was auf dem Server läuft (nvidia-smi, pip install, python train.py), funktioniert dort.

Der Dateibrowser von Jupyter kümmert sich auch um Dateien: Ziehen Sie Dateien zum Hochladen auf das Panel links, und mit Rechtsklick auf eine Datei → Download speichern Sie sie auf Ihrem Computer. Das passt für Notebooks, Skripte und Dateien bis zu einigen hundert Megabyte. Bei Gigabytes muss der Browser-Tab die ganze Zeit offen bleiben, und ein unterbrochener Upload beginnt von vorn. Nutzen Sie dafür scp (unten) oder laden Sie direkt auf den Server herunter; der Ratgeber zur Übertragung von Datensätzen vergleicht die Möglichkeiten.

Eine Gewohnheit, die sich vom ersten Tag an lohnt: Starten Sie lange Jobs in tmux oder mit nohup, damit sie weiterlaufen, wenn Sie den Tab schließen. Der Ratgeber zu Servern im Leerlauf zeigt beides und erklärt, wie der Server automatisch stoppt, wenn der Job fertig ist.

VS Code und Cursor mit Remote SSH

Dateien auf dem Server so zu bearbeiten, als lägen sie lokal, ist die bequemste Art zu arbeiten, und es läuft über denselben SSH-Schlüssel.

  1. Installieren Sie in VS Code die Erweiterung Remote - SSH von Microsoft.
  2. Öffnen Sie C:\Users\<your name>\.ssh\config im Editor (legen Sie die Datei an, falls es sie nicht gibt; achten Sie darauf, dass der Editor kein .txt anhängt) und ergänzen Sie:
Host gpu
    HostName vramfarm.com
    Port 31001
    User root
    IdentityFile ~/.ssh/id_ed25519
  1. Drücken Sie F1, wählen Sie Remote-SSH: Connect to Host…, dann gpu, und wählen Sie bei Nachfrage Linux.
  2. File → Open Folder → /workspace.

Bei der ersten Verbindung installiert VS Code seinen Serverteil auf der Maschine. Das dauert eine Minute und zählt als kleiner Download. Er landet in /root/.vscode-server, außerhalb von /workspace, und wird deshalb auf jedem neuen Server erneut installiert. Wenn Sie einen neuen Server starten, ändern Sie nur die Zeile Port. Mit dem Eintrag gpu funktioniert auch ssh gpu in PowerShell.

Cursor funktioniert genauso: Es hat seine eigene Remote-SSH-Erweiterung und liest dieselbe config-Datei.

Eines sollten Sie wissen: Ein offenes VS-Code-Fenster hält eine SSH-Verbindung aufrecht, und eine offene Verbindung zählt als Nutzung des Servers, genau wie ein PowerShell-Fenster mit einer SSH-Sitzung, die Sie nie geschlossen haben. Der Leerlaufschutz warnt Sie nicht und stoppt den Server nicht, solange es offen ist. Schließen Sie es also, wenn Sie fertig sind, oder stoppen Sie den Server.

Dateien mit scp kopieren

scp gehört zum selben OpenSSH-Client. Achten Sie auf das große -P für den Port; ssh nutzt ein kleines -p.

# eine Datei auf den Server hochladen
scp -P 31001 .\dataset.zip root@vramfarm.com:/workspace/

# ein Ergebnis herunterladen
scp -P 31001 root@vramfarm.com:/workspace/outputs/result.png .

# einen ganzen Ordner herunterladen
scp -r -P 31001 root@vramfarm.com:/workspace/ComfyUI/output .\output

Tausende kleine Dateien werden einzeln nur langsam kopiert. Packen Sie sie zuerst auf dem Server und laden Sie dann ein einziges Archiv herunter. Windows 10 und 11 enthalten tar, Sie können es also ohne zusätzliche Werkzeuge entpacken:

ssh -p 31001 root@vramfarm.com "tar czf /workspace/out.tgz -C /workspace/ComfyUI output"
scp -P 31001 root@vramfarm.com:/workspace/out.tgz .
tar xzf out.tgz

Bricht ein aktuelles scp mit „subsystem request failed“ ab, ergänzen Sie -O, um das ältere Kopierprotokoll zu nutzen. rsync, das unterbrochene Übertragungen fortsetzt, gehört nicht zu Windows; Sie können es in WSL ausführen. Wenn Sie lieber Dateien in einem Fenster hin und her ziehen, funktioniert WinSCP mit demselben Schlüssel: Wählen Sie SFTP, tragen Sie Host und Port aus Meine Server ein, Benutzer root, und lassen Sie WinSCP Ihren OpenSSH-Schlüssel umwandeln, wenn es das anbietet.

Jedes Gigabyte, das Sie hinein- oder herausbewegen, zählt als Traffic zum Tarif der Maschine, der vor dem Start angezeigt wird, meist etwa ein Cent pro GB oder weniger. Und denken Sie vor dem Stoppen daran, dass die Serverfestplatte gelöscht wird: Laden Sie herunter, was Sie brauchen, oder klicken Sie auf Speichern und stoppen, um /workspace zu behalten. Was erhalten bleibt und was nicht, steht unter was mit Ihren Dateien passiert, wenn Sie eine GPU stoppen.

Fragen zum Thema

Kann ich einen Server mit Windows mieten?

Nein. Die Server sind Linux-Container, und genau das erwarten PyTorch, ComfyUI und die meisten KI-Werkzeuge. Sie steuern sie unter Windows über PowerShell, VS Code oder den Browser.

Ich habe schon einen Schlüssel aus PuTTYgen. Kann ich ihn verwenden?

Ja. Öffnen Sie den Schlüssel in PuTTYgen und kopieren Sie den Text aus dem Feld, das als öffentlicher Schlüssel für OpenSSH authorized_keys beschriftet ist: eine Zeile, die mit ssh-ed25519 oder ssh-rsa beginnt. Fügen Sie sie in den Einstellungen ein. Das ssh von PowerShell kann keine .ppk-Dateien lesen; um sich aus PowerShell zu verbinden, erstellen Sie also entweder mit ssh-keygen einen neuen Schlüssel oder exportieren den privaten Schlüssel über Conversions, Export OpenSSH key.

Gibt es ein Passwort, das ich statt eines Schlüssels nutzen kann?

Nein. Die Server akzeptieren nur Schlüssel. Wenn der Schlüssel nicht funktionieren will, klicken Sie unter „Meine Server“ auf „Jupyter öffnen“ und starten Sie dort ein Terminal: Es ist derselbe Server, und Sie brauchen keinen Schlüssel.

Mit welchem Benutzernamen melde ich mich an?

root. Der Befehl unter „Meine Server“ enthält ihn bereits, zusammen mit Host und Port Ihres Servers.

Finden Sie die GPU, auf die Ihr Modell passt

Wählen Sie ein Modell und sehen Sie die günstigste Karte mit genug VRAM, minutengenau in Euro abgerechnet.