Logo VRAMfarm VRAMfarm
FR
S’inscrire

12 novembre 2026 · Équipe VRAMfarm

Se connecter en SSH à un serveur GPU depuis Windows 10 et 11 : clé, connexion, erreurs

Un ordinateur portable Windows avec PowerShell ouvert, relié par une clé à un serveur GPU : comment se connecter en SSH à un serveur GPU depuis Windows

Windows 10 et 11 intègrent déjà le même client ssh que celui des guides pour Mac et Linux : vous n’avez pas besoin de PuTTY. Accéder à un serveur GPU demande cinq commandes dans PowerShell et environ cinq minutes : vérifier que ssh est présent, créer une clé, copier le fichier .pub, le coller dans le tableau de bord, puis lancer la commande de connexion depuis Mes serveurs. La plupart des erreurs « Permission denied » sous Windows viennent de trois erreurs, toutes traitées plus bas.

Si vous préférez ne pas toucher du tout à SSH, passez directement à la section sur Jupyter : chaque serveur dispose aussi d’un terminal dans le navigateur.

Vérifiez qu’OpenSSH est installé

Ouvrez PowerShell (menu Démarrer, tapez « PowerShell ») ou Windows Terminal. Lancez :

ssh -V

Vous devriez voir une ligne de version comme OpenSSH_for_Windows_9.5. Windows 10 depuis les mises à jour de 2018 et toutes les versions de Windows 11 fournissent le client activé.

Si vous obtenez « ssh n’est pas reconnu en tant que commande interne ou externe », installez-le : Paramètres → Système → Fonctionnalités facultatives sur les versions récentes de Windows 11 (Paramètres → Applications → Fonctionnalités facultatives sur Windows 10 et les anciennes versions de Windows 11) → Ajouter une fonctionnalité (ou Afficher les fonctionnalités) → Client OpenSSH. Fermez PowerShell, rouvrez-le et relancez ssh -V.

Les commandes de ce guide sont prévues pour PowerShell. Elles fonctionnent aussi dans Windows Terminal, qui ouvre PowerShell par défaut. L’ancienne invite de commandes (cmd) lance aussi ssh, mais les commandes pour copier la clé y sont différentes ; la version cmd est indiquée là où c’est utile.

Créez une clé et trouvez le fichier .pub

Vérifiez d’abord si vous avez déjà une clé :

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

Si la liste affiche id_ed25519.pub, vous en avez une : passez à la section suivante. Si vous lisez « Cannot find path » ou « Impossible de trouver le chemin d’accès », créez une clé :

ssh-keygen -t ed25519

Appuyez trois fois sur Entrée : gardez l’emplacement par défaut, et laissez la phrase de passe vide, sauf si vous en voulez une. S’il demande « already exists. Overwrite (y/n)? », répondez n. Vous avez déjà une clé, et l’écraser la rendrait inutilisable partout ailleurs où vous l’utilisez.

La clé, ce sont deux fichiers dans C:\Users\<your name>\.ssh\ :

Fichier Ce que c’est Ce qu’il faut en faire
id_ed25519 Clé privée Elle reste sur votre ordinateur. Ne la collez jamais nulle part
id_ed25519.pub Clé publique C’est elle qui va dans le tableau de bord

Pour voir le dossier, lancez explorer $env:USERPROFILE\.ssh. Vous remarquerez peut-être que Windows affiche id_ed25519.pub avec une icône Microsoft Publisher et le type « Document Microsoft Publisher ». Windows se contente de deviner d’après l’extension .pub. Ne double-cliquez pas dessus. Faites clic droit → Ouvrir avec → Bloc-notes, ou copiez-la simplement depuis PowerShell :

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

Dans l’invite de commandes, l’équivalent est type %USERPROFILE%\.ssh\id_ed25519.pub | clip. Le presse-papiers contient maintenant une ligne qui commence par ssh-ed25519, suivie d’une longue chaîne et du nom de votre ordinateur.

Collez la clé et connectez-vous

Dans le tableau de bord, ouvrez Paramètres → Accès aux serveurs → Clé SSH publique, collez la ligne et cliquez sur Enregistrer la clé. La clé est ajoutée à chaque nouveau serveur et aux serveurs déjà en cours. Vous ne le faites qu’une fois ; la même clé fonctionne pour tous les serveurs que vous lancerez ensuite.

Ouvrez ensuite Mes serveurs, trouvez votre serveur en cours et copiez sa commande SSH. Elle ressemble à ceci, avec votre propre port :

ssh -p 31001 root@vramfarm.com

Collez-la dans PowerShell (le clic droit colle dans la plupart des terminaux Windows) et appuyez sur Entrée. À la première connexion, SSH demande Are you sure you want to continue connecting (yes/no/[fingerprint])?. Tapez yes. Vous êtes maintenant sur le serveur en tant que root. Vérifiez la carte :

nvidia-smi

La commande affiche le GPU, sa mémoire et la version du pilote. Si vous comptez installer un build précis de PyTorch, le guide sur le pilote et CUDA explique comment lire cette ligne. Tapez exit pour sortir. Chaque serveur a son propre port, la commande change donc à chaque lancement ; celle de Mes serveurs est toujours la bonne.

Le pas-à-pas complet pour Mac et Linux, avec les mêmes étapes côte à côte, se trouve dans le guide de la clé SSH.

« Permission denied (publickey) » et autres erreurs sous Windows

Permission denied (publickey), ou une demande de mot de passe

Le serveur n’a pas accepté votre clé. Les serveurs n’ont pas de mot de passe : une demande de mot de passe signifie donc la même chose. Sous Windows, c’est presque toujours l’une de ces causes :

  1. Le mauvais texte a été collé. Comparez la ligne dans Paramètres avec Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub. Si ce que vous avez collé commence par -----BEGIN OPENSSH PRIVATE KEY-----, c’est votre clé privée : supprimez-la du champ et collez la ligne du .pub à la place.
  2. La ligne a été coupée. Copier depuis le Bloc-notes avec le retour automatique à la ligne, ou depuis un e-mail, peut ajouter des sauts de ligne. La clé doit tenir sur une seule ligne continue.
  3. La clé porte un autre nom. Si vous l’avez enregistrée sous gpu_key ou créée dans PuTTYgen, ssh ne la trouvera pas tout seul. Indiquez-la : ssh -i $env:USERPROFILE\.ssh\gpu_key -p 31001 root@vramfarm.com. Un fichier .ppk de PuTTY ne fonctionne pas du tout avec cette commande ; voir la FAQ ci-dessous.

Si vous avez défini une phrase de passe en créant la clé, SSH vous la demande avec les mots Enter passphrase for key. C’est le mot de passe de votre clé, pas celui du serveur.

WARNING: UNPROTECTED PRIVATE KEY FILE

SSH refuse une clé privée que d’autres utilisateurs de Windows peuvent lire, ce qui arrive quand le fichier a été copié depuis un autre ordinateur ou un dossier partagé. Corrigez les droits pour que vous seul puissiez la lire :

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

REMOTE HOST IDENTIFICATION HAS CHANGED

Les serveurs vont et viennent, et un port que vous utilisiez la semaine dernière peut maintenant appartenir à un autre serveur. Votre ordinateur se souvient de l’ancien et vous avertit. Supprimez l’ancienne entrée pour ce port, puis reconnectez-vous :

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

Connection refused, ou connection timed out

Refused signifie généralement que le serveur est encore en train de démarrer ou qu’il est déjà arrêté : attendez le statut En cours dans Mes serveurs. Timed out sur un réseau d’entreprise ou d’université signifie souvent que le réseau bloque les connexions sortantes vers des ports inhabituels. Essayez un partage de connexion depuis votre téléphone pour le confirmer. Si c’est bien la cause, utilisez le terminal Jupyter décrit plus bas, qui passe par du HTTPS normal dans votre navigateur.

La phrase de passe de la clé est demandée à chaque fois

Laissez l’agent ssh de Windows s’en souvenir. Dans un PowerShell ouvert en tant qu’administrateur :

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

Sans SSH du tout : le terminal de Jupyter

Vous pouvez vous passer complètement de clé. Dans Mes serveurs, cliquez sur Ouvrir Jupyter, puis sur File → New → Terminal. Vous obtenez un shell sur le même serveur en tant que root, dans le navigateur, sans clé ni logiciel client. Tout ce qui, dans ce guide, s’exécute sur le serveur (nvidia-smi, pip install, python train.py) fonctionne là aussi.

L’explorateur de fichiers de Jupyter gère aussi les fichiers : glissez des fichiers sur le panneau de gauche pour les envoyer, faites clic droit sur un fichier → Download pour l’enregistrer sur votre ordinateur. Cela convient aux notebooks, aux scripts et aux fichiers jusqu’à quelques centaines de mégaoctets. Pour des gigaoctets, l’onglet du navigateur doit rester ouvert tout du long et un envoi interrompu repart de zéro : utilisez plutôt scp (ci-dessous) ou téléchargez directement sur le serveur ; le guide du transfert de jeux de données compare les options.

Une habitude à prendre dès le premier jour : lancez les longues tâches dans tmux ou avec nohup, pour qu’elles continuent quand vous fermez l’onglet. Le guide sur les serveurs inactifs montre les deux, et explique comment arrêter le serveur automatiquement à la fin de la tâche.

VS Code et Cursor avec Remote SSH

Modifier les fichiers du serveur comme s’ils étaient en local est la façon de travailler la plus confortable, et cela passe par la même clé SSH.

  1. Dans VS Code, installez l’extension Remote - SSH de Microsoft.
  2. Ouvrez C:\Users\<your name>\.ssh\config dans le Bloc-notes (créez le fichier s’il n’existe pas ; vérifiez que le Bloc-notes n’ajoute pas .txt) et ajoutez :
Host gpu
    HostName vramfarm.com
    Port 31001
    User root
    IdentityFile ~/.ssh/id_ed25519
  1. Appuyez sur F1, choisissez Remote-SSH: Connect to Host…, sélectionnez gpu, puis Linux si on vous le demande.
  2. File → Open Folder → /workspace.

À la première connexion, VS Code installe sa partie serveur sur la machine, ce qui prend une minute et compte comme un petit téléchargement. Elle va dans /root/.vscode-server, en dehors de /workspace : elle est donc réinstallée sur chaque nouveau serveur. Quand vous lancez un nouveau serveur, changez seulement la ligne Port. Avec l’entrée gpu en place, ssh gpu fonctionne aussi dans PowerShell.

Cursor fonctionne de la même façon : il a sa propre extension Remote SSH et lit le même fichier config.

À savoir : une fenêtre VS Code ouverte maintient une connexion SSH, et une connexion ouverte compte comme une utilisation du serveur, exactement comme une fenêtre PowerShell avec une session SSH jamais fermée. La protection contre l’inactivité ne vous préviendra pas et n’arrêtera pas le serveur tant qu’elle est ouverte : fermez-la quand vous avez terminé, ou arrêtez le serveur.

Copier des fichiers avec scp

scp est fourni avec le même client OpenSSH. Notez le -P majuscule pour le port ; ssh utilise un -p minuscule.

# envoyer un fichier sur le serveur
scp -P 31001 .\dataset.zip root@vramfarm.com:/workspace/

# télécharger un résultat
scp -P 31001 root@vramfarm.com:/workspace/outputs/result.png .

# télécharger un dossier entier
scp -r -P 31001 root@vramfarm.com:/workspace/ComfyUI/output .\output

Des milliers de petits fichiers se copient lentement, un par un. Regroupez-les d’abord dans une archive sur le serveur, puis téléchargez cette archive unique. Windows 10 et 11 incluent tar, vous pouvez donc la décompresser sans outil supplémentaire :

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

Si un scp récent s’arrête sur « subsystem request failed », ajoutez -O pour utiliser l’ancien protocole de copie. rsync, qui reprend les transferts interrompus, ne fait pas partie de Windows ; vous pouvez le lancer dans WSL. Si vous préférez une fenêtre où glisser vos fichiers, WinSCP fonctionne avec la même clé : choisissez SFTP, saisissez l’hôte et le port indiqués dans Mes serveurs, l’utilisateur root, et laissez-le convertir votre clé OpenSSH quand il le propose.

Chaque gigaoctet qui entre ou sort compte comme du trafic au tarif de la machine, affiché avant le lancement, généralement autour d’un centime par Go, voire moins. Et avant d’arrêter, n’oubliez pas que le disque du serveur est effacé : téléchargez ce dont vous avez besoin ou cliquez sur Enregistrer et arrêter pour conserver /workspace. Ce qui est conservé et ce qui ne l’est pas est expliqué dans ce que deviennent vos fichiers quand vous arrêtez un GPU.

Questions sur ce sujet

Puis-je louer un serveur qui tourne sous Windows ?

Non. Les serveurs sont des conteneurs Linux, ce qu’attendent PyTorch, ComfyUI et la plupart des outils d’IA. Vous les pilotez depuis Windows avec PowerShell, VS Code ou le navigateur.

J’ai déjà une clé créée avec PuTTYgen. Puis-je l’utiliser ?

Oui. Ouvrez la clé dans PuTTYgen et copiez le texte de la zone intitulée comme la clé publique pour les authorized_keys d’OpenSSH : une ligne qui commence par ssh-ed25519 ou ssh-rsa. Collez-la dans Paramètres. Le ssh de PowerShell ne sait pas lire les fichiers .ppk : pour vous connecter depuis PowerShell, créez une nouvelle clé avec ssh-keygen ou exportez la clé privée via Conversions, Export OpenSSH key.

Puis-je utiliser un mot de passe au lieu d’une clé ?

Non. Les serveurs n’acceptent que les clés. Si vous n’arrivez pas à faire fonctionner une clé, utilisez Ouvrir Jupyter dans Mes serveurs et lancez-y un terminal : c’est le même serveur, et aucune clé n’est nécessaire.

Avec quel nom d’utilisateur faut-il se connecter ?

root. La commande affichée dans Mes serveurs le contient déjà, avec l’hôte et le port de votre serveur.

Trouvez le GPU qui convient à votre modèle

Choisissez un modèle et voyez la carte la moins chère avec assez de VRAM, facturée à la minute en euros.