Tunnel SSH vers RDP

Pour mettre en place un tunnel SSH vers un poste Windows (RDP) il faut:

Sur le poste “client”:

Puttygen.exe (générateur de clés SSH) pour générer la paire de clés publique / privée permettant la connection

Putty.exe (client SSH) pour activer le tunnel sur demande

Sur le poste “serveur” (Windows 7 Pro):

RDP actif et l'utilisateur configuré pour accepter les connections

Putty est disponible ici (prendre les versions 64-bit de préférence): https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Une fois le tout téléchargé, suivre les procédure suivantes.

Génération de paire de clés SSH

Démarrer puttygen.exe

Accepter l'avertissement d'installation Windows

*Parameters > Type of key*: RSA

*Parameters > Number of bits*: 4096

*Actions > Generate* Important: il faut bouger la souris dans la région blanche!

Une fois terminé, assigner un mot de passe

À partir d'un poste GNU/Linux, générer un mot de passe (avec pwqgen par exemple)

Mettre le mot de passe dans *Key passphrase* et *Confirm passphrase*

Cliquer dans la section *Key > Public key*, choisir *Tout sélectionner* et coller cette information dans un nouveau fichier *PCXXX-NOM_Client_SSH-pub.txt* - mettre dans *Documents*

Actions > Save the generated key > Save private key > PCXXX-NOM_Client_SSH - mettre dans Documents, l'extension est .ppk par défaut (note: pour fins de backup)

Demander à un administrateur d'ajouter l'accès au compte SSH correspondant sur $GW_HOSTNAME à l'aide de la clé publique SSH enregistrée dans *Documents*

Configuration du tunnel SSH (session Putty)

Démarrer putty.exe

Dans *Basic settings*:

*Host Name*: $GW_HOSTNAME (nom de domaine de la passerelle SSH cible)

*Port*: 22 (ou autre)

*Save Sessions*: PCXXX-NOM_Tunnel_RDP (caractères de soulignement importants)

Click *Save*

Dans *Connection*:

*Seconds between keepalives (0 to turnoff)*: 30

*Data > Login Details > Auto-login username*: $USERNAME (nom d'utilisateur GNU/Linux fourni par l'admin)

*SSH > Protocol options > Don't start a shell or command at all* (cocher)

*SSH > Protocol options > Enable compression*

*SSH > Tunnels > Add new forwarded port > Source port*: 2000 (ou autre)

*SSH > Tunnels > Add new forwarded port > Destination*: 192.168.X.XXX:3389 (IP du système Windows 7 cible, port RDP)

Click *Add*

Click sur *Session* et enregistrer la session

SSH > Auth > Private key file for authentication > Pointer vers Documents/fichier .ppk de la clé privée

Retourner à Session, clicker 1 fois sur le profil et sauvegarder

Tester le tunnel et la connection RDP

Démarrer putty.exe

Session > Load, save or delete a stored session > Saved sessions, click 1 fois sur le profil, ensuite click Load

Click Open, accepter l'avertissement clé SSH

Une fenêtre noire Putty devrait s'ouvrir, entrer le mot de passe de la clé SSH

Ouvrir l'outil RDP de Windows

Spécifier 127.0.0.1:2000 (ou autre port au lieu de 2000) comme adresse, tester avec les informations RDP du poste serveur

Faire le raccourci mRemoteNG

Installer “mRemoteNG”:https://mremoteng.org/

Ajouter le tunnel (connection SSH2): *Fichier > Nouvelle connection* (ou Ctrl-N)

Affichage > Nom: PCXXX-NOM SSH Tunnel

Affichage > Panneau: PCXXX-NOM SSH Tunnel

Connexion > Nom d'hôte/IP: $GW_HOSTNAME (nom du serveur passerelle)

Connexion > Nom d'utilisateur: fourni par l'admin système

Connexion > Mot de passe: celui qui protégeait la clé SSH

Protocole > Protocole: SSH2

Protocole > Port: 22 (ou autre)

Session Putty > choisir celle enregistrée lors de la création de session

Ajouter la connection RDP: *Fichier > Nouvelle connection* (ou Ctrl-N)

Affichage > Nom: PCXXX-NOM accès RDP

Affichage > Panneau: PCXXX-NOM accès RDP

Connexion > Nom d'hôte/IP: 127.0.0.1

Connexion > Nom d'utilisateur: celui sur le PC Windows cible

Connexion > Mot de passe: celui sur le PC Windows cible

Protocole > Protocole: RDP

Protocole > Port: 2000 (ou autre)

Session Putty > choisir celle enregistrée lors de la création de session