Introduction

Il est interessant de noté que suivant la version OpenSSH du moment, elle fonctionnera ou non en mode "clé pré-partagée" sur windows 2003, le principal problème étant la limitation du compte système, incapable d'obtenir des pouvoirs étendus. La partie de cette documentation sur 2003 en mode clé privée/publique sera donc efficace ou non suivant les versions.

Si l'un des lecteurs trouve une meilleure manière que la mienne, je serais très interessé par une petite note, afin de mettre à jour le guide.

1- Installation et configuration du serveur

La première étape consiste à télécharger OpenSSH du site de l'éditeur (A mon époque http://lexa.mckenna.edu/sshwindows/ )

Décompressez le dans un dossier temporaire ou sur le bureau, puis lancez l'exécutable.

Choisissez le dossier où installer le programme, évitez toutefois de l'installer dans un dossier comprenant des espaces comme « program files » ou « documents and settings ». laissez les paramètres par défaut pour les autres fenêtres puis terminez le programme d'installation.

Une fois l'installation terminée et sous un compte disposant de privilèges administrateur local ou de domaine (suivant l'emplacement de votre serveur), cliquez sur démarrer , puis sur exécuter . Dans le champ ouvrir tapez cmd puis validez en cliquant sur ok .

Une fois sous l'invite de commande, tapez : cd chemin du dossier/bin

Par exemple, si vous avez installé le programme sous C:\OpenSSH, tapez cd C:\OpenSSH

Tapez ensuite une des combinaisons ci-dessous :

- Si vous désirez que les utilisateurs du domaine puissent se connecter, entrez :

mkgroup -d >> ..\etc\group
mkpasswd -d] >> ..\etc\passwd

- Si vous désirez que seuls les utilisateurs disposant d'un compte local sur le serveur OpenSSH puissant se connecter, entrez :

mkgroup -l >> ..\etc\group
mkpasswd -l [-u ] >> ..\etc\passwd

Tapez ensuite " net start opensshd " afin de démarrer le service SSH.

Vous disposez maintenant d'un serveur SSH basique. Passons maintenant au test de fonctionnement.

Depuis une seconde machine, téléchargez PuTTY ( http://the.earth.li/~sgtatham/putty/latest/x86/putty.zip ) et décompressez le sur un dossier temporaire du type C:\PuTTY, vérifiez que vous pouvez vous connecter au serveur en utilisant un identifiant et un mot de passe valide. Pour se faire, suivez la procédure suivante :

  1. Lancez PuTTY
  2. Dans le champ hostname (or IP address) entrez l'IP du serveur SSH
  3. Cliquez sur le bouton SSH s'il ne l'est pas par défaut
  4. Cliquez sur Open
  5. Si un avertissement apparaît, cliquez sur OK
  6. A l'invite, entrez un identifiant utilisateur valide
  7. Entrez ensuite le mot de passe de l'utilisateur
  8. Si tout se passe bien, vous devez obtenir l'accès à l'invite de commande du serveur.

à Si vous n'obtenez pas d'accès, répétez les étapes ci-dessus. Retournez ensuite sur le serveur, puis tapez la commande net stop opensshd afin d'arrêter le service.

Toujours dans l'invite de commande, tapez la commande

ssh-keygen -t rsa

afin de générer une clé de type SSH2 RSA.

Lorsque le programme vous demande où stocker la clé, ne choisissez pas le chemin suggéré , à la place, entrez /etc/id_rsa .

OpenSSH vous demande alors d'entrer une passphrase , appuyez juste sur Entrée.

Deux fichiers sont alors créés :

•  Id_rsa : la clef privée que les clients utilisent
•  Id_rsa.pub : la clef publique qui restera sur votre serveur

Tapez ensuite cd ...\etc puis copy id_rsa.pub authorized_keys.

Tapez enfin net start opensshd afin de redémarrer le serveur.
Depuis un explorateur de fichiers Windows, copiez le fichier id_rsa sur le client (par une disquette, cd, clé usb..)

2- Configuration de PuTTY afin d'utiliser la clé OpenSSH

De retour sur le client, lancez le programme puttygen

Cliquez sur le bouton Load puis changez le type de fichiers à rechercher par Fichiers de type : All Files (*.*)

Entrez le chemin où vous avez placé le fichier id_rsa, puis sélectionnez le. Cliquez ensuite sur Ouvrir .
Vous obtenez alors un message de réussite d'importation, cliquez sur Ok , puis sur Save private key . Spécifiez le chemin du dossier ou stocker la clef. Par défaut, elle se nommera id_rsa.ppk. Fermez ensuite PuTTYGen.

•  Utilisation de la clé avec PuTTY

Il vous faut maintenant créer une connexion PuTTY avec utilisation de la clé nouvellement importée, pour se faire, suivez la procédure suivante :

•  Lancez PuTTY
•  Dans le champ Host Name or IP Address , entrez l'IP du serveur
•  Assurez vous que le bouton SSH est sélectionné
•  Dans le champ du haut ''Saved Sessions'', entrez un nom pour cette connexion
•  Dans la fenêtre d egauche, dépliez l'arborescence ''Connection'' puis ''SSH'' (si nécessaire, dans l'arborescence SSH, cliquez sur Auth)
•  Dans le champ Private key file for authentication , cliquez sur Browse puis specifies le chemin où vous avez enregistré id_rsa.ppk . cliquez ensuite sur Ok .
•  Retourner au menu ''Session'' dans la fenêtre de droite, puis cliquez sur Save pour enregistrer votre session et ses paramètres.
•  Cliquez maintenant sur Open , une fenêtre s'ouvre et vous demande un identifiant, entrez en un valide puis tapez sur la touche entrée.
•  Vous êtes maintenant connecté au serveur.

3- Configuration supplémentaire pour Windows 2003

OpenSSH, comme de nombreux services, est lancé par le compte système. Windows 2003 considérant ce compte comme l'équivalent d'un compte invité, il ne dispose pas des autorisations nécessaires pour démarrer une session. Afin de faire fonctionner le programme sous Windows 2003, suivez la procédure suivante :

1- Depuis une session administrateur, cliquez sur démarrer , panneau de configuration , puis choisissez services . Cherchez le service OpenSSH , cliquez dessus puis choisissez Arrêter .

2- Dans la même fenêtre, faites un clique-droit sur le service et choisissez propriétés . Cliquez sur l'onglet connexion , cliquez ensuite sur le bouton ce compte : choisissez Administrateur et entrez puis confirmez le mot de passe du compte. Cliquez enfin sur Ok pour valider.

3- Lancez un explorateur de fichiers Windows, supprimez le contenu du dossier C:\Program Files\OpenSSH\var\log

Dans C:\Program Files\OpenSSH\etc, sélectionnez les fichiers

•  ssh_host_dsa_key
•  ssh_host_key
•  ssh_host_rsa_key

en maintenant la touche Ctrl avant de cliquer sur chaque fichier. Cliquez sur l'un deux avec le bouton droit, puis cliquez sur propriétés , dans l'onglet sécurité , cliquez sur paramètres avancés . Dans l'onglet Propriétaire , choisissez le compte administrateur. Si seul le groupe est affiché, cliquez sur Autres utilisateurs ou groupes et dans le champ nom de l'objet à sélectionner , entrer administrateur . Validez par deux fois en cliquant sur Ok .

4- cliquez maintenant sur démarrer , choisissez panneau de configuration , Outils d'administrations et enfin Stratégie de sécurité locale . A l'intérieur, dépliez l'arborescence Stratégies locales > Attribution des droits utilisateur. Ajoutez le compte administrateur dans les propriétés suivantes :

•  Créer un objet-jeton
•  Remplacer un jeton niveau de processus

Pour se faire double cliquez sur chacun de ces privilèges, cliquez sur ajouter un utilisateur ou un groupe , entrez Administrateur dans le champ nom de l'objet à sélectionner , puis cliquez sur Ok

5- de retour dans services ( démarrer , panneau de config., services ), cliquez avec le bouton droit sur OpenSSH puis sur démarrer

Vous pouvez dorénavant utiliser OpenSSH sous Windows 2003 en authentification par clé publique.

4- Conseils

•  Les dossiers contenant des espaces ou des accents (é,è,à ...) peuvent poser des problèmes avec OpenSSH.
•  Ne placez pas les clés publiques (id_rsa.pub et authorized_keys) dans les dossiers des utilisateurs, choisissez plutôt un dossier neutre comme \OpenSSH\etc
•  Ne laissez pas la clé privée sur le serveur, celle-ci pouvant être compromise, quelque soit le niveau d'encryption dont elle dispose.