web-dev-qa-db-fra.com

OpenSSH sous Windows - "XXX n'a ​​pas pu enregistrer votre clé publique dans __PROGRAMDATA__

J'essaie d'installer OpenSSH sur un serveur Windows Server (norme 2012 R2) et je suis les instructions suivantes: https://www.server-world.info/en/note?os=Windows_Server_2012&p=openssh

J'ai exécuté Powershell en tant qu'administrateur et tout semble s'installer correctement jusqu'à la partie où j'essaie de générer la clé d'hôte SSH en exécutant la commande .\ssh-keygen.exe -A (étape 7 des instructions) . Après l'avoir exécuté, une erreur est renvoyée:

RSA Impossible d'enregistrer votre clé publique dans __PROGRAMDATA __ \\ ssh/ssh_Host_rsa_key.9uX3wf3apv: Aucun fichier de répertoire de ce type "

La même erreur s'affiche également pour DSA, ECDSA et ED25519.

Screenshot of errors

Si quelqu'un peut me dire où je me trompe ici, ce serait apprécié. J'ai cherché sur le Web et je n'ai trouvé aucune autre référence à cela.

5
Evvy73

J'ai eu la même erreur, mais quand j'ai ajouté manuellement un dossier sous programdata appelé SSH, puis que j'ai à nouveau exécuté la commande, cela semblait fonctionner

12
Scott Coats

Le __PROGRAMDATA__ fait référence à votre variable d'environnement PROGRAMDATA (qui est probablement définie sur C:\ProgramData).

Il est généralement plus facile d’ouvrir une invite de commande cmd et de taper 

mkdir %PROGRAMDATA%\ssh

puis relancez le 

.\ssh-keygen.exe -A
7
Anthon

Vous devez le faire à partir d'une invite de commande, car powershell gâche la variable ProgramData.

Faire ceci 

C:\Program Files\OpenSSH-Win64> Powershell.\Install-sshd.ps1 -A

à partir d'une invite de commande et vous serez probablement prêt à partir.

1
Espen Fossheim