SSH : un récapitulatif de commandes

Note de la traductrice : la version originale de cet article a été publiée en russe ici.

http://www.ietf.org/rfc/rfc1918.txt
(192.168..; 172.16..-172.31..; 10...*)

Section 1. Se connecter en SSH à une machine distante (REMOTEHOST) qui a une IP de confiance

1. Vous aurez besoin d’une machine HOST1 dont l’adresse IP est autorisée.

2. L’hôte HOST1 doit être configuré comme suit (dans sshd_config) :

| PermitRootLogin without-password | Accès root par clé (avec un couple de clé publique/privée)|
| PubkeyAuthentication yes | Accès par clé publique (activé par défaut)|
| PasswordAuthentication yes | Accès par mot de passe (activé par défaut)|
| TCPKeepAlive yes | Vérification de la connexion (activée par défaut)|
| ClientAliveInterval 25 | La connexion au client sera vérifiée toutes les 25 secondes (par défaut, cette variable est réglée à 0)|

3. Le serveur REMOTEHOST doit être configuré comme suit (toujours dans sshd_config) :

| PubkeyAuthentication yes | Accès par clé publique (activé par défaut)|
| PasswordAuthentication yes | Accès par mot de passe (activé par défaut)|

4. Pour transférer un port, faites exécuter sur REMOTEHOST par son utilisateur, remoteuser :

$ssh -f -N -R 2222:localhost:22 username1@HOST1

Vous avez le choix entre saisir le mot de passe défini pour l’utilisateur username1 et utiliser les clés.
SSH se connectera sur le port 2222 de HOST1 via le port 22.
L’option -f passe le processus (en l’occurence le client SSH) en arrière-plan.
Username1 est l’utilisateur distant qui se trouve sur la machine HOST1.

5. Lancez le client SSH sur la machine HOST1 :

$ssh -p2222 remoteuser@localhost

Maintenant saisissez le mot de passe. Je rappelle que remoteuser est l’utilisateur distant, qui se trouve sur la machine REMOTEHOST.

Section 2. Lancer le serveur X11vnc et s’y connecter

1. Pour transférer un autre port, exécutez sur REMOTEHOST, localement ou à distance :

$ssh -f -N -R 5900:localhost:5900 username1@HOST1

Vous avez le choix entre saisir le mot de passe défini pour l’utilisateur username1 et utiliser les clés.
SSH se connectera sur le port 5900 de HOST1 via le port 5900.
L’option -f passe le processus (en l’occurence le client SSH) en arrière-plan.
Username1 est l’utilisateur distant qui se trouve sur la machine HOST1.

2. Sur REMOTEHOST, exécutez :

$x11vnc

3. Lancez Remmina ou votre client VNC préféré sur HOST1.
Sélectionnez VNC, mettez localhost comme adresse, et hop vous êtes bon pour appuyer sur « Connect » !

Section 3. Contrôler REMOTEHOST à distance depuis HOST2 via le protocole VNC (les deux machines étant en liste grise)

1. Vous aurez besoin d’un serveur de passage HOST1 dont l’adresse IP est autorisée.

2. Pour transférer un port, faites exécuter sur REMOTEHOST par son utulisateur, remoteuser :

$ssh -f -N -R 5900:localhost:5900 username1@HOST1

Vous avez le choix entre saisir le mot de passe défini pour l’utilisateur username1 et utiliser les clés.
SSH se connectera sur le port 5900 de HOST1 via le port 5900.
L’option -f passe le processus (en l’occurence le client SSH) en arrière-plan.
Username1 est l’utilisateur distant qui se trouve sur la machine HOST1.

3. Lancez le serveur X11vnc sur REMOTEHOST.

4. Pour transférer un port, faites exécuter sur HOST2 par son utilisateur, host2user :

$ssh -f -N -L 5900:localhost:5900 username1@HOST1

Vous avez le choix entre saisir le mot de passe défini pour l’utilisateur username1 et utiliser les clés.
SSH se connectera sur le port 5900 de HOST1 via le port 5900.
L’option -f passe le processus (en l’occurence le client SSH) en arrière-plan.
Username1 est l’utilisateur distant qui se trouve sur la machine HOST1.

5. Lancez Remmina ou un équivalent sur l’hôte HOST2, mettez localhost comme adresse et cliquez sur « Connect ».