335 lines
13 KiB
XML
335 lines
13 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!DOCTYPE html
|
||
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
|
||
"tuteurs://DTD/tml.dtd">
|
||
<html>
|
||
<head>
|
||
<title>Tunnel SSH</title>
|
||
</head>
|
||
<body>
|
||
|
||
<h1>Créer un tunnel SSH</h1>
|
||
|
||
<p>
|
||
Certains sites Internet ne sont accessibles que depuis certains
|
||
ordinateurs, serveurs ou domaines très précis. Par exemple, pour accéder
|
||
à certains articles de revues par l'abonnement de l'ENS, on doit se connecter depuis
|
||
l'un des ordinateurs de l'École. Cette contrainte permet d'être certain que seules les
|
||
personnes autorisées pourront accéder à certaines données, après s'être
|
||
préalablement identifiées au moyen d'un mot de passe.
|
||
</p>
|
||
|
||
<p>
|
||
Mais cet avantage a un inconvénient. Si vous êtes à l'étranger, ou si
|
||
vous êtes tout simplement chez vous et ne pouvez vous rendre
|
||
physiquement devant les ordinateurs en question, ces ressources vous
|
||
sont inaccessibles...
|
||
</p>
|
||
|
||
<p>
|
||
Heureusement, il existe la technique
|
||
du <strong>tunnel SSH</strong>. Celle-ci consiste à « creuser
|
||
un tunnel » entre votre connexion et un serveur autorisé pour y
|
||
faire passer les informations de manière sécurisée. En d'autres termes,
|
||
vous allez :
|
||
</p>
|
||
|
||
<ol>
|
||
<li>ouvrir une connexion sécurisée avec ce serveur (par exemple
|
||
sas.eleves.ens.fr, à l'ENS) ;</li>
|
||
<li>dire à votre navigateur de se brancher sur cette
|
||
connexion ;</li>
|
||
<li>vous connecter à des sites comme si vous étiez sur ce
|
||
serveur.</li>
|
||
</ol>
|
||
|
||
<div class="attention">Pour pouvoir ouvrir un tunnel SSH avec
|
||
l'ENS, vous devez disposer d'un compte sur les machines de
|
||
l'École.</div>
|
||
|
||
<h2>Ouvrir le tunnel</h2>
|
||
|
||
<p>
|
||
Nous allons commencer par ouvrir le tunnel. La façon de procéder dépend
|
||
du système d'exploitation que vous utilisez.
|
||
</p>
|
||
|
||
<h3>Avec Linux ou Mac OS X</h3>
|
||
|
||
<p>Avec Linux ou tout autre dérivé d'UNIX (BSD, Solaris, Mac OS X,
|
||
etc.), la procédure est sans doute la plus simple. Suivez les étapes
|
||
suivantes pour mettre en place un tunnel SOCKS entre votre machine et la machine distante.</p>
|
||
|
||
<ol>
|
||
|
||
<li><strong>Ouvrez un terminal</strong>, c'est-à-dire une fenêtre en mode
|
||
texte permettant de taper des lignes de commande.
|
||
|
||
<div class="encadre">
|
||
Sous <strong>Mac OS X</strong>, pour ouvrir un
|
||
terminal, allez dans Finder > Applications >
|
||
Utilitaires > Terminal.</div>
|
||
</li>
|
||
|
||
<li>
|
||
Quand le terminal est ouvert, tapez dedans la <strong>ligne de
|
||
commande</strong> suivante (faites un copier-coller si vous
|
||
voulez être sûr de ne pas faire d'erreur) :
|
||
|
||
<pre><span class="prompt">toto@ordinateur $</span> ssh -ND 3128 <strong><em>monlogin</em></strong>@sas.eleves.ens.fr</pre>
|
||
|
||
<div class="attention">
|
||
Attention !
|
||
<ol>
|
||
<li>Ne tapez pas la partie
|
||
« <strong>toto@ordinateur</strong> $ », qui est
|
||
l'invite de commande ;</li>
|
||
<li>remplacez
|
||
« <strong><em>monlogin</em></strong> » par votre
|
||
identifiant (<em>login</em>).</li>
|
||
<li>Cette commande ne va rien afficher, il y a aura juste un curseur qui clignote. C'est normal, et cela veut dire que la connexion est active. Vous pouvez alors passer à la suite, et lorsque vous voudrez fermer le tunnel pour vous déconnecter, vous n'aurez qu'à faire Ctrl+C. Pour avoir une sortie plus détaillée, vous pouvez rajouter l'option -v à la commande précédente.</li>
|
||
</ol>
|
||
</div>
|
||
</li>
|
||
|
||
<li> Une connexion avec l'ENS va s'établir, en ouvrant un
|
||
tunnel SSH. Donnez votre <strong>mot de passe</strong>. La
|
||
première fois, on vous demandera si vous acceptez la clef SSH,
|
||
afin d'éviter toute tentative d'usurper l'identité de la
|
||
machine distante : vérifiez que le fingerprint indiqué
|
||
est bien "d2:2f:2d:e6:22:17:16:1c:54:5f:e3:9a:0b:88:db:37" ou
|
||
"e9:54:4a:e6:f8:51:e9:8b:90:d5:c9:b6:24:c0:4e:60" ou
|
||
"2d:fe:8f:d2:10:1e:5d:7f:aa:d0:0f:d4:70:3e:fc:85" et si c'est
|
||
le cas répondez « Yes ».
|
||
|
||
<div class="encadre">Petite explication technique : la
|
||
commande indiquée plus haut demande à ssh de créer un tunnel dynamique entre
|
||
la machine locale et la machine distante (sas.eleves.ens.fr) en utilisant le port 3128.
|
||
Tout le trafic arrivant sur ce port sur la machine locale sera redirigé sur la machine
|
||
distante (option -D 3128). De plus, on dit à ssh de ne pas exécuter de commandes distantes
|
||
avec l'option -N.
|
||
</div>
|
||
</li>
|
||
|
||
<li>
|
||
Si ssh n'a pas signalé d'erreur, le tunnel est maintenant opérationel et
|
||
vous pouvez passer à la section suivante. (Il est normal que ssh ne vous
|
||
rende pas la main, ou qu'il vous rende la main sans ouvrir de shell sur
|
||
sas.) Attention, vous ne devez pas fermer la fenêtre de terminal avant
|
||
d'avoir terminé votre navigation, sous peine de devoir recommencer les
|
||
étapes précédentes.
|
||
|
||
<div class="encadre">Si vous voulez avoir plus d'informations sur la connexion SSH
|
||
et l'état du tunnel, vous pouvez utiliser l'argument " -v " (à ajouter après ssh
|
||
dans la ligne de commande précédente) qui donnera un log détaillé de ce que fait ssh.
|
||
Dans ce cas, le signe que le tunnel est ouvert est la ligne "entering interactive session."
|
||
</div>
|
||
</li>
|
||
</ol>
|
||
|
||
|
||
<h3>Avec Windows</h3>
|
||
|
||
<div class="encadre">
|
||
<p>Sur Windows 10, vous avez l'option d'activer la fonctionnalité expérimentale OpenSSH de Windows. Pour cela, allez dans "Paramètres > Applications > Gérer les fonctionnalités
|
||
facultatives > ajouter une fonctionnalité > Open SSH Client (Beta)", puis redémarrez votre ordinateur.</p>
|
||
<p>Vous pouvez désormais utiliser les fonctionnalités ssh dans Windows Powershell. Les lignes de commandes indiquées pour
|
||
Linux/macOS (<b>ssh -D 3128 monlogin@sas.eleves.ens.fr</b>) fonctionnent de la même façon.</p></div>
|
||
|
||
<p><i>Sur les autres distributions de Windows/sans activer OpenSSH : </i></p>
|
||
<p>Pour ouvrir un tunnel SSH depuis Windows, vous aurez besoin
|
||
du logiciel <strong>PuTTY</strong>. Téléchargez le
|
||
programme <strong>putty.exe</strong> à
|
||
l'adresse <a
|
||
href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html">http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html</a>.
|
||
</p>
|
||
|
||
<h4>La première fois</h4>
|
||
|
||
<p> Ouvrez le programme <strong>putty.exe</strong>.
|
||
</p>
|
||
|
||
<p>Remplissez les champs suivants :</p>
|
||
|
||
<ol>
|
||
<li>dans l'onglet « Session » :
|
||
<ol>
|
||
<li><strong>Host name (or IP
|
||
address)</strong> : <code>sas.eleves.ens.fr</code></li>
|
||
<li><strong>Port</strong> : <code>22</code></li>
|
||
<li><strong>Protocole</strong> : <code>SSH</code></li>
|
||
<li><strong>Saved sessions</strong> : <code>ENS par tunnel
|
||
SSH</code>
|
||
<p><img src="tunnel0.png" alt="Configuration de l'onglet
|
||
Session" /></p>
|
||
</li>
|
||
|
||
</ol>
|
||
</li>
|
||
<li>dans l'onglet « SSH », puis « Tunnel »
|
||
<ol>
|
||
<li><strong>Source port</strong> : <code>3128</code></li>
|
||
<li><strong>Destination</strong> : <code>www-cache.ens.fr:3128</code></li>
|
||
<li>cliquer sur « <strong>Add</strong> »
|
||
<p><img src="tunnel1.png" alt="Configuration de l'onglet
|
||
Tunnel" /></p>
|
||
|
||
<p>
|
||
Vous verrez alors : </p>
|
||
<p><img src="tunnel2.png" alt="Après configuration de
|
||
l'onglet Tunnel" /></p>
|
||
</li>
|
||
</ol>
|
||
</li>
|
||
<li>dans l'onglet « Session » :
|
||
<ol>
|
||
<li>cliquer sur « <strong>Save</strong> ».</li>
|
||
</ol>
|
||
</li>
|
||
</ol>
|
||
|
||
|
||
<h4>Les fois suivantes</h4>
|
||
|
||
<p>Désormais, pour ouvrir le tunnel SSH, il vous suffira de
|
||
cliquer deux fois sur « ENS par tunnel SSH ». Donnez
|
||
votre
|
||
<strong>identifiant</strong> (<em>login</em>) et votre <strong>mot de
|
||
passe</strong>. La première fois, on vous demandera si vous acceptez
|
||
la clef SSH, afin d'éviter toute tentative d'usurper l'identité de
|
||
sas : vérifiez que le fingerprint indiqué est bien
|
||
"d2:2f:2d:e6:22:17:16:1c:54:5f:e3:9a:0b:88:db:37" et répondez « Yes ».
|
||
</p>
|
||
|
||
|
||
|
||
<h2>Emprunter le tunnel</h2>
|
||
|
||
<p>Que vous utilisiez Linux, Mac OS, Windows, FreeBSD ou autre,
|
||
vous avez maintenant ouvert le tunnel. Le signe qu'il est ouvert,
|
||
c'est la fenêtre de terminal ouverte. Attention, si vous fermez la fenêtre
|
||
de terminal, le tunnel se fermera.</p>
|
||
|
||
<p>Il reste à emprunter ce tunnel. Pour cela, vous devrez configurer
|
||
votre navigateur pour lui dire d'utiliser
|
||
le <strong>proxy</strong> <code>localhost</code> avec le port
|
||
<code>3128</code>. Nous ne pouvons pas faire l'inventaire de tous
|
||
les navigateurs qui existent, alors voici simplement comment faire
|
||
pour les principaux. Pour les autres (Konqueror, Galeon, Epiphany,
|
||
Mozilla, w3m...), cela ne devrait pas être très différent.</p>
|
||
|
||
|
||
<h3>Avec Firefox pour Linux / Mac OS X</h3>
|
||
<p>Allez dans <code>Edit</code>, puis <code>Preferences</code>, <code>Advanced</code>, <code>Network</code> et <code>Settings</code> :</p>
|
||
|
||
<p><img src="tunnel8.png" alt="Options de connection dans Firefox" /></p>
|
||
<p>Alternativement, allez dans <code>Edit</code>,
|
||
puis <code>Preferences</code>, et enfin <code>Connexion
|
||
settings</code> :</p>
|
||
|
||
<p><img src="tunnel5.png" alt="Options de connection dans Firefox"/></p>
|
||
|
||
<p>Si vous avez suivi la méthode pour Linux, indiquez à votre navigateur
|
||
que vous voulez <strong>utiliser un proxy</strong>, en cliquant sur « <code>Manual proxy
|
||
configuration</code> », puis en
|
||
tapant <code>localhost</code> comme proxy SOCKS,
|
||
et <code>3128</code> comme port :</p>
|
||
|
||
<p><img src="tunnel9.png" alt="Paramètres de connection dans Firefox" /></p>
|
||
|
||
<h3>Avec Firefox pour Windows</h3>
|
||
|
||
<p>Allez dans <code>Edit</code>,
|
||
puis <code>Preferences</code>, <code>Advanced</code>, <code>Network</code> et <code>Settings</code> :</p>
|
||
|
||
<p> <img src="tunnel8.png" alt="Options de connection dans Firefox"/></p>
|
||
<p>Alternativement, allez dans <code>Edit</code>,
|
||
puis <code>Preferences</code>, et enfin <code>Connexion
|
||
settings</code> :</p>
|
||
|
||
<p><img src="tunnel5.png" alt="Options de connection dans Firefox"/></p>
|
||
|
||
|
||
<p>Si vous avez suivi la méthode pour Windows, indiquez à votre navigateur
|
||
que vous voulez <strong>utiliser un
|
||
proxy</strong>, en cliquant sur « <code>Manual proxy
|
||
configuration</code> », puis en
|
||
tapant <code>localhost</code> comme proxy HTTP,
|
||
et <code>3128</code> comme port :</p>
|
||
|
||
<p><img src="tunnel6.png" alt="Paramètres de connection dans Firefox" /></p>
|
||
|
||
|
||
<h3>Avec Internet Explorer pour Windows : </h3>
|
||
|
||
<p>
|
||
Allez dans <code>Options</code>, puis cliquez sur l'onglet
|
||
<code>Connections</code> ; cliquez sur le bouton
|
||
« <code>Paramètres réseau</code> », comme
|
||
indiqué sur l'image suivante :</p>
|
||
<p><img src="tunnel3.png" alt="Bouton Paramètres réseau" />
|
||
</p>
|
||
|
||
|
||
<p> Ensuite, cochez la case « <code>Utiliser un serveur
|
||
proxy pour votre réseau local</code> », et indiquez
|
||
d'utiliser l'adresse <code>localhost</code> avec le
|
||
port <code>3128</code> :</p>
|
||
<p><img src="tunnel4.png" alt="Adresse du proxy" />
|
||
</p>
|
||
|
||
|
||
<p>Maintenant, le tunnel est ouvert, et votre navigateur est disposé à
|
||
l'emprunter. Demandez-lui d'aller à l'adresse
|
||
<a href="http://www.intranet.ens.fr">http://www.intranet.ens.fr</a>
|
||
pour <strong>vérifier son bon fonctionnement</strong>.
|
||
</p>
|
||
|
||
<h2>Reboucher le tunnel</h2>
|
||
|
||
<p>Quand vous avez fini de consulter les sites qui nécessitent de passer
|
||
par un tunnel SSH, et à ce moment seulement, vous pouvez le
|
||
fermer. C'est comme si vous « rebouchiez » le tunnel après l'avoir
|
||
emprunté. Il suffit pour cela de :</p>
|
||
|
||
<ol>
|
||
<li> retourner dans les <em>options de votre navigateur</em>, et de lui
|
||
indiquer de <strong>ne pas utiliser de proxy</strong>.</li>
|
||
|
||
<li> <strong>fermer la fenêtre de terminal</strong> avec laquelle vous
|
||
avez ouvert le tunnel.</li>
|
||
|
||
</ol>
|
||
|
||
<h2>Quelques sites accessibles depuis l'ENS</h2>
|
||
|
||
<p>Voici quelques-uns des sites dont l'accès est restreint à
|
||
l'ENS :</p>
|
||
|
||
<ul>
|
||
<li><a
|
||
href="http://www.intranet.ens.fr">http://www.intranet.ens.fr</a>,
|
||
l'Intranet de l'ENS ;</li>
|
||
<li><a
|
||
href="http://www.ens.fr/annuaire">http://www.ens.fr/annuaire/</a>,
|
||
l'Annuaire interne de l'ENS ;</li>
|
||
<li><a href="http://entapps.ens.fr/joomla/index.php?option=com_content&view=article&id=532:menu-de-la-semaine">http://entapps.ens.fr/joomla/index.php?option=com_content&view=article&id=532:menu-de-la-semaine</a>,
|
||
le Menu du Pot de l'ENS ;</li>
|
||
<li><a href="http://salles.ens.fr/">http://salles.ens.fr/</a>, le
|
||
planning de réservation des salles.</li>
|
||
</ul>
|
||
|
||
<p>L'ENS profite également de certaines offres commerciales, telles que
|
||
des encyclopédies en ligne, des bases de données documentaires,
|
||
etc. Notamment, depuis
|
||
la <a href="http://halley.ens.fr/search*frc~S9/">bibliothèque
|
||
électronique de l'ENS</a>, vous aurez accès aux ressources
|
||
d'« Accès réservé aux postes de l'ENS ».</p>
|
||
|
||
<div class="metainformation">
|
||
Auteurs : Baptiste Mélès, Lionel Fourquaux, Lucas Verney.
|
||
<date value="from git" />
|
||
</div>
|
||
|
||
</body>
|
||
</html>
|