Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

OpenSSH pour Windows : Microsoft présente sa feuille de route
Pour une mise en production dans la première moitié de 2016

Le , par Michael Guilloux

53PARTAGES

6  0 
Microsoft travaille pour concrétiser son intention d’apporter à Windows, le support de Secure Shell (SSH), un protocole de communication sécurisé, conçu pour remplacer les différents programmes rlogin, telnet, rcp, ftp et rsh. De nombreuses solutions SSH existent aujourd’hui et sont répandues dans le monde Linux. Mais dans les environnements de production Windows, les implémentations sont limitées, ce qui restreint en particulier l’interopérabilité entre Linux et Windows.

En juin dernier, l’équipe PowerShell de Microsoft a donc annoncé une solution robuste et sécurisée pour automatiser et gérer à distance les systèmes Linux et Windows ; une solution qui sera fournie grâce à la combinaison de PowerShell et SSH. Cette initiative est le résultat d’une demande populaire des utilisateurs qui veulent utiliser le protocole SSH pour interopérer entre Windows et Linux – en ayant la possibilité d’établir une connexion à partir de Linux et gérer Windows via SSH, et vice versa.

Microsoft a donc opté pour OpenSSH, une solution que la société estime avoir été éprouvée dans l’industrie, et veut travailler avec la communauté dédiée pour offrir une intégration étroite avec Windows. OpenSSH apporte, sous une version libre, les outils de connectivité SSH aux utilisateurs techniques d’internet.

Parmi les nombreuses options disponibles pour apporter OpenSSH à Windows, Microsoft a choisi de partir des travaux de NoMachine qui fournissent un port à Win32 basé sur OpenSSH 5.9. Microsoft a donc travaillé avec la société pour mettre à jour le port vers la version 7.1 d’OpenSSH, publiée en Aout dernier. La feuille de route de la firme de Redmond se décline en 5 étapes :

  1. Mettre à jour le port de NoMachine à OpenSSH 7.1 : cette étape est déjà terminée ;
  2. Tirer parti de l'API de chiffrement Windows au lieu d’OpenSSL/LibreSSL et exécuter en tant que Windows Service ;
  3. Corriger les problèmes de compatibilité de POSIX : Steve Lee de l’équipe PowerShell fait ici allusion au fait que Windows ne supporte plus le sous-système POSIX alors qu’une partie d’OpenSSH en dépend. Apporter OpenSSH à Windows impliquerait donc de déployer POSIX juste pour SSH, une chose que les clients et partenaires ne souhaiteraient pas, d’après Steve Lee. Un travail sera donc effectué sur le code pour qu’il soit compatible avec la partie d’OpenSSH qui dépend de POSIX ;
  4. Stabiliser le code et corriger les problèmes signalés ;
  5. Disponibilité de la version de production.

Si à l’heure actuelle, seule la première étape est terminée, Microsoft a rendu le code disponible au public et ouvert aux contributions publiques. L’équipe PowerShell précise cependant que le code est encore à un stade très précoce pour être utilisé en production. Steve Lee suggère donc qu’il soit traité comme une preview pour les développeurs.

La société s’est fixé comme objectif de livrer, dans la première moitié de l’année 2016, un port Windows pour OpenSSH qui offre interopérabilité et parité entre les systèmes Windows et Linux.

Code du projet sur GitHub

Source : Blog MSDN

Et vous ?

Que pensez-vous de ce projet ? Et qu’attendez-vous de l’équipe PowerShell pendant qu’elle apporte OpenSSH à Windows ?

Forum Windows

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de AoCannaille
Membre émérite https://www.developpez.com
Le 28/10/2015 à 11:33
Citation Envoyé par pcdwarf Voir le message
c'est un vrai shell dans le genre de bash qui soit à la fois puissant et bête.
Powershell vous dites ??? Beaucoup trop intelligent pour être utilisable.
J'ai personellement perdu un temps monnumental avec ce langage batard...
Pareil pour le bash... le temps perdu à cause d'un espace oublié (dans un if par exemple) ou en trop (affectaction).

La syntaxe du if en bash est d'un compliqué c'est incroyable... et deviner que '[[' est un alias pour 'test' est absolument impossible... Une syntaxe aussi compliqué pour la structure de contrôle la plus basique d'un langage de programmation est une hérésie héritée d'une époque où chaque octet comptait... mais aujourd'hui ça devrait être banni! malheureusement pour une compatibilité maximale, on doit se contenter de ce shell antédiluvien...
4  0 
Avatar de AoCannaille
Membre émérite https://www.developpez.com
Le 21/10/2015 à 14:20
Citation Envoyé par gretro Voir le message
Super nouvelle. En attendant, j'utilise Putty, mais j'ai déjà hâte que ce soit implémenté. Ça facilitera les déploiements sur le Cloud.
Si tu veux retrouver des sensations plus linuxienne dans un terminal pour travailler en SSH, essaye MobaXterm ( http://mobaxterm.mobatek.net/ ), ça va te changer la vie! Si je devait retenir 3 détails qui semble ridicules mais qui simplifie un max la vie par rapport a putty ce serait :
1. Le support du copier coller (également à la linux, avec le coller la selection avec clic molette)
2. Les onglets de terminaux
3. Le SFTP automatique avec la connexion SSH, et le navigateur sftp suit tes déplacements console (en suivant tes 'cd' quoi...) sans même parler de l'édition graphique locale et l'export automatique sur sauvegarde locale...
3  0 
Avatar de pcdwarf
Membre éclairé https://www.developpez.com
Le 25/10/2015 à 17:44
C'est quoi l'intéret exactement ?

Déjà, c'est incompréhensible qu'il n'y ait pas un équivalent sécurisé de telnet depuis 15 ans.
Mais ce qui manque réellement à windows, c'est un vrai shell dans le genre de bash qui soit à la fois puissant et bête.
Powershell vous dites ??? Beaucoup trop intelligent pour être utilisable.
J'ai personellement perdu un temps monnumental avec ce langage batard où il est a peu près impossible de prévoir comment le bazar va transtyper les objets qui passent dans un pipe.

Actuellement, pour avoir du ssh sous windows, le mieux, c'est encore d'installer cygwin.... Tristesse...
1  0 
Avatar de pcdwarf
Membre éclairé https://www.developpez.com
Le 24/11/2015 à 10:18
Suites aux 3 réactions précédente je précise ma pensée.

Bash a un syntaxe halacon, j'en conviens. Il se trouve que j'y suis habitué et que je m'en rends plus compte mais c'est vrai qu'au début j'ai eu un peu de mal.

Sauf que je ne parle pas de syntaxe là.

Mon propos, c'est que bash est un langage puissant au sens ou il permet d'assembler simplement des appels à plein de commandes pour faire très rapidement un ensemble qui répond à un besoin complexe.
Et surtout que, au fond, c'est un langage "bête" DONC prévisible.
Ce que j’appelle un langage "bête", c'est un langage qui n'essaie pas de comprendre ce que l'usager veut faire (parce-que c'est inévitablement un fail) et se contente d'appliquer "bêtement" des règles simples qui tiennent sur une seule page.
Par exemple quand je fait A | B il connecte la sortie standard de A sur l'entrée standard de B sans chercher à interpréter ce qui passe au milieu.

Si vous n'aimez pas bash, scriptez en javascript, ou en python, y'a aucun problème! Ce sont des langages structurés et compréhensibles.
(en passant, pour enfoncer le clou sur l'histoire de la syntaxe, je n'arrive vraiment pas a me faire à la syntaxe de python que je trouve vraiment extraterrestre mais il n’empêche que structurellement, c'est un bon langage).

Le problème avec powershell, c'est qu'ils ont repris le concept de pipe mais qu'au lieu d'y passer des données brutes, ils y passent des d'objets qui se trans-typent automatiquement dans tous les sens.
L'idée semble sympa au départ mais quand vous construisez votre commande, chaque bloc ne renvoie pas la même chose selon si la sortie est la console ou un pipe vers un autre bloc. Et ça, ça rends juste le débuggage intorchable voir complètement impossible.
1  0 
Avatar de TiranusKBX
Expert confirmé https://www.developpez.com
Le 20/10/2015 à 22:32
je testerait quand l'étape 3 seras terminée
on verras ce que ça donne ^^
0  0 
Avatar de gretro
Membre actif https://www.developpez.com
Le 21/10/2015 à 1:32
Super nouvelle. En attendant, j'utilise Putty, mais j'ai déjà hâte que ce soit implémenté. Ça facilitera les déploiements sur le Cloud.
0  0 
Avatar de gretro
Membre actif https://www.developpez.com
Le 30/10/2015 à 0:19
Citation Envoyé par AoCannaille  Voir le message
Pareil pour le bash... le temps perdu à cause d'un espace oublié (dans un if par exemple) ou en trop (affectaction).

La syntaxe du if en bash est d'un compliqué c'est incroyable... et deviner que '[[' est un alias pour 'test' est absolument impossible...

Ce commentaire me fait bien rire, car je me suis mis récemment au Bash pour faire un script de déploiement pour mon blogue, et je suis resté l'air bête devant cette syntaxe pendant de nombreuses minutes.

J'ai même lu un commentaire sur Stackoverflow qui préconisant d'utiliser bash le moins possible et de simplement passer à un autre langage de script comme Javascript, Python ou Ruby.

Je ne l'ai pas fait, mais j'aurais peut-être dû...
0  0 
Avatar de AoCannaille
Membre émérite https://www.developpez.com
Le 30/10/2015 à 11:53
Citation Envoyé par gretro Voir le message
Ce commentaire me fait bien rire, car je me suis mis récemment au Bash pour faire un script de déploiement pour mon blogue, et je suis resté l'air bête devant cette syntaxe pendant de nombreuses minutes.

J'ai même lu un commentaire sur Stackoverflow qui préconisant d'utiliser bash le moins possible et de simplement passer à un autre langage de script comme Javascript, Python ou Ruby.

Je ne l'ai pas fait, mais j'aurais peut-être dû...
On a du tomber sur le même post

De toute façon c'est simple, 10 ans que je scripte occasionnelement en bash, 10 ans qu'a chaque fois que je fais un if j'ouvre un tuto.
Et je parle du if pour l'exemple, mais les boucles ne sont pas mieu, ni les switch... avec c'est sûr qu'on peut faire des trucs rapidement...

Perso je travaille sur de l'embarqué avec des linux minimales et je n'ai que bash (des fois que sh) et je ne peux pas installer un autre interpreteur... :'(
0  0