From 76e2d45485985e4749423d910aa8c3b10152c7f8 Mon Sep 17 00:00:00 2001
From: Basile CLEMENT
+ Dans le menu de sélection de réseau, sélectionnez un réseau
+ eduroam (clic gauche), puis suivez les instructions suivantes.
+
+ Créez, en tant que root le
+ fichier basile[point]clement[at]ens[point]fr
.
+ Connection eduroam à l'ENS et ailleurs
+
+ eduroam est un réseau WiFi diffusé dans de nombreuses institutions
+ de recherche et/ou d'enseignement en France, en Europe, et dans le
+ reste du monde. Son but est d'offrir un accès à Internet aux
+ étudiants et personnels de ces établissements de façon universelle
+ (si vous avez des identifiants eduroam dans un établissement, par
+ exemple à l'ENS, vous pouvez vous connecter à eduroam partout dans
+ le monde !).
+
+ Installation automatique (recommandé sous Windows)
+
+ En cours
+ d'écriture. Voir l'outil
+ de configuration CAT d'eduroam.
+
+ Installation manuelle (recommandé sous Linux)
+
+
+
+ Linux (ubuntu) avec NetworkManager
+
+
+
+
+ Authentication
, choisissez Tunneled TLS
Anonymous Identity
, entrez anonymous@ens.fr
CA Certificate
, sélectionnez le
+ fichier /etc/ssl/certs/AddTrust_External_Root.pem
Inner authentication
, sélectionnez PAP
@ens.fr
à la fin (par
+ exemple, si votre identifiant ENT/GPS
+ est bobama
, vous devez
+ renseigner bobama@ens.fr
)Password
, entrez votre mot de passe ENT/GPSConnect
Linux avec wicd
+
+ wicd ne possède malheureusement pas de profil fonctionnant avec la
+ configuration eduroam de l'ENS, il va donc falloir le créer nous
+ même.
+
+
Si ce n'est pas le cas - il vous faut
+ utiliser une autre méthode.
+ /etc/wicd/encryption/templates/eduroam-ens
+ et placez-y le contenu suivant :
+ name = Eduroam ENS
+author = Basile Clement
+version = 1
+require identity *Identifiant password *Mot_de_passe
+protected password *Mot_de_passe
+-----
+ctrl_interface=/var/run/wpa_supplicant
+network={
+ ssid="$_ESSID"
+ scan_ssid="$_SCAN"
+ key_mgmt=WPA-EAP
+ eap=TTLS
+ identity="$_IDENTITY"
+ anonymous_identity="anonymous@ens.fr"
+ password="$_PASSWORD"
+ ca_path="/etc/ssl/certs"
+ subject_match="ens.fr"
+ phase2="auth=PAP"
+}
+
+ Ensuite, éditez le
+ fichier /etc/wicd/encryption/templates/active
+ (toujours en tant que root) et ajoutez-y la ligne
+ suivante :
+
eduroam-ens+ + +
+ Maintenant, il ne reste plus qu'à configurer un profil avec vos + identifiants eduroam. +
eduroam
)Use these settings for all network
+ sharing this essid
et Use encryption
Eduroam ENS
comme méthode de chiffrage@ens.fr
) et mots de passe ENT/GPS
+ dans les champs Identifiant
+ et Mot_de_passe
Si vous utilisez wpa_supplicant, vous devriez être à peu près
+ capables de vous débrouiller tout seul pour la configuration. Le
+ bloc network suivant devrait fonctionner (pensez à
+ correctement remplacer $LOGIN
+ et $PASSWORD
et n'ajoutez pas @ens.fr
+ après l'identifiant ENT/GPSp) suivant devrait fonctionner :
+
+
network={ + ssid="eduroam" + key_mgmt=WPA-EAP + eap=TTLS + identity="$LOGIN" + anonymous_identity="anonymous@ens.fr" + password="$PASSWORD" + ca_path="/etc/ssl/certs/" + subject_match="ens.fr" + phase2="auth=PAP" +}+ + +
+
Authentication
, choisissez Tunneled TLS
+
/etc/wicd/encryption/templates/eduroam-ens
et placez-y le contenu suivant :
@@ -132,15 +103,15 @@ network={
subject_match="ens.fr"
phase2="auth=PAP"
}
-+
/etc/wicd/encryption/templates/active
(toujours en tant que root) et ajoutez-y la ligne
suivante :
eduroam-ens- +
+
Si vous utilisez wpa_supplicant, vous devriez être à peu près +
$LOGIN
@@ -180,10 +151,10 @@ network={
subject_match="ens.fr"
phase2="auth=PAP"
}
-
+ -SSH est un logiciel (et un protocole) permettant de se connecter à un ordinateur distant de façon sécurisée. Il vous permet en particulier d'ouvrir un shell à distance sur le serveur des élèves, clipper. +SSH est un logiciel (et un protocole) permettant de se connecter à un ordinateur distant de façon sécurisée. Il vous permet en particulier d'ouvrir un shell à distance sur une des machines de l'ENS, trolle.ens.fr par exemple.
trolle.ens.fr
sera utilisée pour les démonstrations. Sachez que vous pouvez vous connecter de la même façon sur n'importe quelle machine des salles informatiques (le nom de la machine étant marqué dessus). Vous pouvez également vous connecter sur sas.eleves.ens.fr
qui remplace l'ancien accès à clipper
mais cette machine n'étant pas physique, il est conseillé de se connecter sur une des machines des salles informatiques pour effectuer des tâches gourmandes en ressources.
+machineloc
. La machine distante,
c'est celle à laquelle vous voulez vous connecter. Dans ce tutorial,
on l'appelle machinedist
. Par exemple, si vous êtes dans
-votre thurne et que vous voulez vous connecter à clipper
,
+votre thurne et que vous voulez vous connecter à une machine de l'ENS (trolle.ens.fr
),
la machine locale est votre propre ordinateur, la machine distante est
-clipper.
+trolle.ens.fr
.
@@ -54,9 +61,9 @@ On peut aussi utiliser la syntaxe équivalente :
Pour indiquer la machine à distance, vous pouvez utiliser aussi bien
-le nom de la machine (clipper.ens.fr
,
-horus.ens.fr
, etc.) que son adresse IP (pour clipper,
-129.199.129.1
).
+le nom de la machine (sas.eleves.ens.fr
, trolle.ens.fr
,
+horus.ens.fr
, etc.) que son adresse IP (pour trolle.ens.fr
,
+129.199.129.38
).
Si vous avez le même login sur les deux machines en question, ce @@ -76,13 +83,13 @@ sur cette machine, vous verrez un message tel que celui-ci : machineloc ~ $ ssh toto@machinedist The authenticity of host 'machinedist' (111.222.333.4)' can't be established. RSA1 key fingerprint is 1z:2y:3x:4w:56:78:98:78:ab:cd:ef:01:23:45:67:89. -Are you sure you want to continue connecting (yes/no)? +Are you sure you want to continue connecting (yes/no)?
Ne paniquez pas ! Tout est parfaitement normal, on vérifie qu'il
s'agit de la bonne machine. Il suffit de répondre 'yes' pour
-continuer. ssh
vous dira alors :
+continuer (si vous êtes sûr de votre connexion). ssh
vous dira alors :
@@ -93,8 +100,8 @@ the list of known hosts.Ce qui signifie que
@@ -108,8 +115,8 @@ défaut,ssh
ne vous embêtera plus à poser la question. Notez au passage le « RSA1 » entre parenthèses. Il s'agit du -type de clef utilisée par la machine distante. Cette information peut -vous servir par la suite pour générer une clef. +type de clé utilisée par la machine distante. Cette information peut +vous servir par la suite pour générer une clé.ssh
vous le réclamera.-clipper ~ $ ssh machine.monlabo.fr -toto@machine's password: +trolle.ens.fr ~ $ ssh machine.monlabo.fr +toto@machine's password:@@ -117,44 +124,48 @@ Il vous suffit de taper votre mot de passe. Attention, pour des raisons de sécurité (un coup d'œil sur l'écran de son voisin est un mode de piratage basique mais efficace) celui n'apparaître pas à l'écran, vous devrez taper en aveugle. Si vous pensez avoir commis une -erreur dans votre mot de passe, faites
-Ctrl+u
et retapez -le en entier. Si vous avez tapé correctement votre mot de passe, vous +erreur dans votre mot de passe, faitesCtrl+u
et retapez-le +en entier. Si vous avez tapé correctement votre mot de passe, vous aurez à votre disposition un shell sur la machine distante. Sinon, vous lirez « Permission denied. » et il faudra recommencer.Authentification par clef publique
+Authentification par clé publique
-Une autre méthode utilise ce qu'on appelle une « clef publique », +Une autre méthode utilise ce qu'on appelle une « clé publique », c'est-à-dire un code qui vous identifie. Si vous suivez la procédure décrite ci-dessous, vous pourrez vous connecter par
-ssh
-sur une machine distante sans avoir à taper de mot de passe. +sur une machine distante sans avoir à taper de mot de passe. De plus, +cette méthode permet de se connecter sur plusieurs machines avec la même +clé, ce qui peut être pratique. Enfin, utiliser une clé publique augmente +(légèrement) la sécurité en cas de compromission du serveur : celui-ci ne peut +pas récupérer votre mot de passe.Type de clef
+Type de clé
Il existe différentes versions de SSH. Suivant le type de version -utilisé sur la machine distante, le type de clef à générer +utilisé sur la machine distante, le type de clé à générer diffère. Cette information vous est donnée par exemple lors de votre première connexion
ssh
sur cette machine (voir ci-dessus). Si vous ne vous en souvenez plus, -sachez que SSH1 utilisegénéralement des clefs RSA1, et SSH2 des clefs -DSA. Pour connaître la version de SSH utilisée sur la machine +sachez que SSH1 utilise généralement des clés RSA1, et que SSH2 peut utiliser des clés +RSA ou DSA. Pour connaître la version de SSH utilisée sur la machine distante, tapezssh -v
sur la machine distante.À l'ENS, depuis décembre 2003, les ordinateurs utilisent SSH2. Si vous -aviez déjà une clef publique pour vous connecter à l'ENS, il vaut -mieux en changer. Il vous suffit de générer une nouvelle clef, de type -DSA, et de suivre de nouveau la procédure ci-dessous. +aviez déjà une clé publique pour vous connecter à l'ENS, il vaut +mieux en changer. Il vous suffit de générer une nouvelle clé, de type +RSA (chiffrement recommandé), et de suivre de nouveau la procédure ci-dessous.-clipper ~ $ ssh -v +trolle.ens.fr ~ $ ssh -v OpenSSH_3.7.1p2, SSH protocols 1.5/2.0, OpenSSL 0.9.7c 30 Sep 2003 Usage: ssh [options] host [command] <...> @@ -165,12 +176,12 @@ Le « SSH protocols 1.5/2.0 » vous indique qu'il s'agit d'unssh
récent qui peut faire du SSH1 ou du SSH2. -Générer la clef
+Générer la clé
Pour ce faire, commencez par taper la commande
ssh-keygen
(comme key generator) sur la machine -locale (et pas sur la machine à distance). +locale (et pas sur la machine distante).@@ -179,95 +190,103 @@ locale (et pas sur la machine à distance).Avec un
+ssh
récent, qui peut faire du SSH1 ou du SSH2, il -faut indiquer le type de clef à générer (voir ci-dessus). Par exemple, -pour générer une clef DSA (SSH2) : +faut indiquer le type de clé à générer (voir ci-dessus). Par exemple, +pour générer une clé RSA (recommandé) :+machineloc ~ $ ssh-keygen -t rsa +
+ +Pour générer une clé de type DSA, il suffit d'utiliser la commande suivant à la place :
machineloc ~ $ ssh-keygen -t dsa
+Notez également qu'il est possible de spécifier la taille de la clé (en bits) avec le paramètre
+-b X
où X est un nombre de bits à choisir parmi (par exemple) 1024, 2048 (minimum recommandé), 4096.-Le générateur de clefs va en générer deux, une clef publique et une -clef privée. Il va placer la clef privée (sous forme chiffrée) dans un -endroit qui, par défaut, est
$HOME/.ssh/id_dsa
pour -SSH2 et$HOME/.ssh/identity
pour SSH1 : +Le générateur de clés va en générer deux, une clé publique et une +clé privée. Il va placer la clé privée (sous forme chiffrée) dans un +endroit qui, par défaut, est$HOME/.ssh/id_rsa
pour +SSH2 et une clé chiffrée en RSA et$HOME/.ssh/identity
pour SSH1 :-machineloc ~ $ ssh-keygen -t dsa -Generating public/private dsa key pair. -Enter file in which to save the key (/usr/home/toto/.ssh/id_dsa): +machineloc ~ $ ssh-keygen -t rsa +Generating public/private rsa key pair. +Enter file in which to save the key (/usr/home/toto/.ssh/id_rsa):Appuyez sur
Enter
pour accepter la -localisation de la clef (il est plus simple d'accepter la localisation +localisation de la clé (il est plus simple d'accepter la localisation proposée).ssh-keygen
vous demande ensuite une « passphrase » (équivalent d'un mot de passe, mais sous -forme de phrase). Cette phrase sert à fortifier la clef pour la rendre +forme de phrase). Cette phrase sert à fortifier la clé pour la rendre plus difficilement cassable. À partir de là, deux solutions :
ssh-agent
pour ne pas avoir à la
-retaper à chaque fois (voir plus bas)Enter
), votre connexion sera moins sûreEnter
), votre connexion sera moins sûre. N'importe qui ayant accès à votre clé privée pourra se connecter en s'identifiant à votre place.
Que vous tapiez une phrase ou pas, à la fin vous verrez quelque chose comme
-Your identification has been saved in /usr/home/toto/.ssh/id_dsa. -Your public key has been saved in /usr/home/toto/.ssh/id_dsa.pub. +Your identification has been saved in /usr/home/toto/.ssh/id_rsa. +Your public key has been saved in /usr/home/toto/.ssh/id_rsa.pub. The key fingerprint is: 1a:2a:3e:4a:1a:65:1c:89:10:92:9c:5c:1f:75:cc:de toto@machineloc-
Si l'on récapitule, ssh-keygen
a généré deux
-clefs :
$HOME/.ssh/identity
(ou
-$HOME/.ssh/id_dsa
si c'est du SSH2) et qui n'est
-accessible qu'à vous$HOME/.ssh/id_rsa
si c'est du SSH2) et qui n'est
+accessible qu'à vous.
-$HOME/.ssh/id_dsa.pub
(ou
+$HOME/.ssh/id_rsa.pub
(ou
$HOME/.ssh/identity.pub
si c'est du SSH1) et qui peut
-être lue par tout le monde$HOME
» ? $HOME est ce qu'on appelle une
+« $HOME
» ? $HOME (ou ~
) est ce qu'on appelle une
variable d'environnement, qui sert à indiquer aux programmes quel est
votre répertoire personnel (la racine de votre compte). Faites
-echo $HOME
pour savoir quel est le vôtre. Sur
-clipper
, c'est
+echo $HOME
dans un terminal sur une machine de l'ENS
+pour savoir quel est le vôtre. Par exemple, sur les machines de l'ENS, c'est
/users/promo/matiere/login
. Pour en savoir plus, voir
l'article « Concept :
-arborescence » dans le n°3 du Hublot.
+arborescence » dans le n°3 du Hublot.
Maintenant, sur la machine distante, allez dans le
-répertoire .ssh
et éditez le fichier
+répertoire ~/.ssh
et éditez le fichier
authorized_keys
: ajoutez à la fin, et sur
une seule ligne (attention aux éditeurs qui coupent les
-lignes) la clef publique (identity.pub
pour SSH1 ou
-id_dsa.pub
pour SSH2) que vous venez de générer. Procédez
+lignes) la clé publique (identity.pub
pour SSH1 ou
+id_rsa.pub
pour SSH2) que vous venez de générer (attention,
+il faut bien ajouter la clé publique et non la clé privée !). Procédez
ainsi pour toutes les machines distantes auxquelles vous voulez vous
connecter sans avoir à taper votre mot de passe. Et voilà !
Si vous avez opté pour la solution « phrase de passe », bravo, votre
-connexion est plus sûre. Mais vous devez taper à chaque fois ladite
-phrase... Solution, utiliser ssh-agent
.
+connexion est plus sûre, votre clé privée ne peut pas être usurpée. Mais vous devez taper à chaque fois ladite
+phrase... ce qui est vite pénible. Solution, utiliser ssh-agent
.
D'abord, il faut lancer ssh-agent
, qui gère les clefs
+
D'abord, il faut lancer ssh-agent
, qui gère les clés
d'identification. Si vous êtes logué dans une salle informatique de
l'ENS avec la config conscrits, pas de problème,
ssh-agent
est déjà lancé. Si ce n'est pas le cas, il faut
@@ -288,7 +307,7 @@ le lancer vous-même.
-Comme l'agent est disponible dans tous les programmes qui découlent, +Comme l'agent est disponible dans tous les programmes lancés ultérieurement, on le lance au début d'une session. Par exemple, quand vous êtes en mode texte et que vous lancez le serveur X :
@@ -308,28 +327,30 @@ Quand vous vous loguez à distance, c'est plutôt :
Une fois lancé, l'agent vous suit dans toutes vos connexions à
distance, et ainsi il est disponible partout. Il faut donner à l'agent
-votre clef à gérer en tapant ssh-add
. On vous demande
+votre clé à gérer en tapant ssh-add
. On vous demande
alors votre phrase de passe :
machine ~ $ ssh-add
-Need passphrase for /home/toto/.ssh/identity (toto@machine)
+Need passphrase for /home/toto/.ssh/id_rsa (toto@machine)
Enter passphrase:
-Identity added: /home/toto/.ssh/identity (toto@machine)
+Identity added: /home/toto/.ssh/id_rsa (toto@machine)
+Note : Les dernières versions des environnements de bureau sous Linux possèdent leur propre interface graphique qui sert de surcouche à ssh-agent
. Par exemple, seahorse
(ou Trousseau de clé Gnome) tient ce rôle dans Gnome. L'utilisation de ssh-agent
peut alors être facilitée, notamment car ces logiciels déverrouillent les clés SSH avec le mot de passe de login directement.
Vous pouvez également utiliser ssh
pour exécuter une
-commande à distance. Par exemple, vous voulez, de votre machine
-personnelle, connaître l'heure sur clipper, pour savoir si votre
+commande à distance. Par exemple, si vous voulez, de votre machine
+personnelle, connaître l'heure sur trolle.ens.fr
, pour savoir si votre
machine est en retard, en avance ou à l'heure.
-machineloc ~ $ ssh clipper.ens.fr date +machineloc ~ $ ssh trolle.ens.fr date Fri Jul 4 12:01:49 MET DST 2003@@ -337,7 +358,7 @@ Fri Jul 4 12:01:49 MET DST 2003 N'oubliez pas de préciser
toto@machine
si vos logins sont
différents entre les deux machines. Si vous voulez exécuter à distance
une commande avec des options, mieux vaut mettre des guillemets. Par
-exemple, je veux savoir si brick
est une station Sun ou
+exemple, je peux savoir si brick
est une station Sun ou
un PC, en utilisant la commande uname
.
@@ -350,6 +371,11 @@ i386
La réponse est « i386 », dénomination utilisée pour les PC.
+Petite astuce pour IRC : Il est possible de se connecter sur IRC sur une machine de l'ENS directement avec la commande suivante (créer un alias pour plus de facilité) :
+
+machineloc ~ $ ssh login@trolle.ens.fr -t irc
+
+
@@ -368,12 +394,12 @@ Please contact your system administrator.
-Ce message signifie que la clef ssh (l'identification) de la machine
+Ce message signifie que la clé ssh (l'identification) de la machine
distante a changé. En effet, à chaque fois que vous vous connectez à
une machine par ssh
, celle-ci présente à votre machine
une sorte de carte d'identité, ainsi vous êtes sûr qu'il s'agit bien
de la bonne machine et pas d'un pirate. Ou bien la machine a
-réellement changé de clef ssh (à l'ENS, cela arrive de temps à autres
+réellement changé de clé ssh (à l'ENS, cela arrive de temps à autres
quand le SPI upgrade une machine), ou bien c'est une attaque de
pirate. Il vaut mieux écrire au SPI pour savoir ce qu'il en est.
Attention, n'oubliez pas les deux points à la fin. Vous
devrez taper votre mot de passe (sauf si vous utilisez
-l'authentification par clef publique, voir ci-dessus), puis
+l'authentification par clé publique, voir ci-dessus), puis
ssh
se lancera dans le transfert en vous indiquant sa
progression :
machineloc ~ $ scp tagada.txt machinedist:
-toto@machinedist's password:
-tagada.txt 100% |***************************************| 2263 00:00
+toto@machinedist's password:
+tagada.txt 100% |***************************************| 2263 00:00
@@ -458,6 +484,13 @@ Maintenant, nous allons envoyer notre fichier tagada.txt
machineloc ~ $ scp tagada.txt machinedist:divers/blagues
+
+ Et même vers n'importe quel répertoire (/bidule
par exemple où / est la racine de la machine) :
+
+machineloc ~ $ scp tagada.txt machinedist:/bidule
+
+
Pour rapatrier des fichiers de la machine distante à votre machine @@ -496,7 +529,7 @@ le transfert machine locale -> machine distante, décrites ci-dessus.
par exemple
-sftp://conscrit@clipper.ens.fr/users/06/maths/conscrit/+
sftp://conscrit@trolle.ens.fr/users/06/maths/conscrit/
Une boîte de dialogue apparaît si nécessaire pour vous demander votre mot de passe. Vous pouvez ensuite copier, @@ -507,22 +540,26 @@ le transfert machine locale -> machine distante, décrites ci-dessus. gestion de fichiers de KDE, par exemple celles auxquelles font appel les fonctions Ouvrir et Enregistrer des divers logiciels.
+La même chose est possible sous Gnome, en passant par le menu "Connexion à un serveur" du gestionnaire de fichiers Nautilus.
+ Quand on utilise beaucoup la connexion distante, il devient très
vite fastidieux d'avoir toujours à taper en entier le nom
-clipper.ens.fr
, a fortiori son adresse IP
-129.199.129.1
. S'il n'y a pas d'ambiguïté (en l'occurrence,
-si vous n'utilisez jamais qu'un seul serveur portant le nom de clipper,
-et pas, par exemple, clipper.ens.fr et clipper.chezmoi.fr), vous pouvez
+trolle.ens.fr
, a fortiori son adresse IP
+129.199.129.38
. S'il n'y a pas d'ambiguïté (en l'occurrence,
+si vous n'utilisez jamais qu'un seul serveur portant le nom de trolle,
+et pas, par exemple, trolle.ens.fr et trolle.chezmoi.fr), vous pouvez
assigner un alias à une adresse. Pour ce faire, mettez
dans le fichier $HOME/.ssh/config
les lignes
suivantes :
-Host clipper +Host trolle User toto -HostName clipper.ens.fr +HostName trolle.ens.fr
@@ -534,7 +571,7 @@ Ainsi, il suffira de taper :
-machineloc ~ $ ssh clipper +machineloc ~ $ ssh trolle
@@ -542,7 +579,7 @@ au lieu de :
-machineloc ~ $ ssh toto@clipper.ens.fr +machineloc ~ $ ssh toto@trolle.ens.fr
@@ -551,7 +588,7 @@ en effet de taper :
-machineloc ~ $ scp tagada.txt clipper:divers/blagues +machineloc ~ $ scp tagada.txt trolle:divers/blagues
@@ -559,7 +596,7 @@ au lieu de :
-machineloc ~ $ scp tagada.txt toto@clipper.ens.fr:divers/blagues +machineloc ~ $ scp tagada.txt toto@trolle.ens.fr:divers/blagues@@ -567,9 +604,9 @@ au lieu de :
Avec Linux ou tout autre dérivé d'UNIX (BSD, Solaris, Mac OS X, - etc.), la procédure est sans doute la plus simple.
+ 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.toto@ordinateur $ ssh -N -T -L 3128:www-cache.ens.fr:3128 monlogin@clipper.ens.fr
+ toto@ordinateur $ ssh -ND 3128 monlogin@sas.eleves.ens.fr
clipper.ens.fr
sas.eleves.ens.fr
22
SSH
ENS par tunnel
@@ -175,8 +186,8 @@
identifiant (login) et votre mot de
passe. La première fois, on vous demandera si vous acceptez
la clef SSH, afin d'éviter toute tentative d'usurper l'identité de
- clipper : vérifiez que le fingerprint indiqué est bien
- "17:b2:61:d4:51:66:48:0d:c4:a4:3f:f1:01:ed:a8:b5" et répondez « Yes ».
+ sas.eleves.ens.fr : 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 ».
@@ -185,7 +196,8 @@
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.
+ c'est la fenêtre de terminal ouverte. Attention, si vous fermez la fenêtre
+ de terminal, le tunnel se fermera.
Il reste à emprunter ce tunnel. Pour cela, vous devrez configurer
votre navigateur pour lui dire d'utiliser
@@ -211,11 +223,17 @@
/>
- Indiquez à votre navigateur que vous voulez utiliser un
+ Si vous avez suivi la méthode pour Windows, indiquez à votre navigateur
+ que vous voulez utiliser un
proxy, en cliquant sur « Manual proxy
configuration
», puis en
tapant localhost
comme proxy HTTP,
- et 3128
comme port :
+ et 3128
comme port :
+ Si vous avez suivi la méthode pour Linux, indiquez à votre navigateur
+ que vous voulez utiliser un proxy, en cliquant sur « Manual proxy
+ configuration
», puis en
+ tapant localhost
comme proxy SOCKS,
+ et 3128
comme port :
@@ -319,7 +337,7 @@ emprunté. Il suffit pour cela de :
d'« Accès réservé aux postes de l'ENS ».
diff --git a/internet/loin/tunnel0.png b/internet/loin/tunnel0.png
index 9be9c36b0331c698a38f86548d2eeac8da74ac4d..a6556512498ceb4460b5b9aadc9f7fee1c80454d 100644
GIT binary patch
literal 31745
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
z
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