Utilisation de fbd-serv en
dehors de l'intranet UMH
Disons que côté client (vous, de chez vous hors intranet
UMH), souhaitiez depuis votre navigateur afficher les résultats
de vos scripts (php) qui se trouvent sur fbd-serv, dans votre
répertoire : ~/public_html
. Depuis les salles
Turing ou Escher il suffit d'indiquer l'URL :
http://fbd-serv[.swapping.umh.ac.be]/~gr[ou]pe$i/index.php,
où $i est votre n° de groupe.
Maintenant depuis chez vous :
- Via une machine UNIX/Linux (d'après un
"tips" de
C. Troestler)
Il y a essentiellement 3 choses à faire :
- Faire un tunnel ssh passant par une machine sur laquelle vous
avez accès et
sur laquelle vous avez un compte (je suppose : "mail.umh.ac.be"), ceci
se résume
en la commande :
$
ssh -L 8080:fbd-serv.swapping.umh.ac.be:80
votrecompte@mail.umh.ac.be
Ceci va lier votre port local 8080 au port 80 (http) de fbd-serv (en
passant par
mail, qui demandera votre password).
- Dire à votre navigateur d'utiliser un proxy, à
savoir
localhost
(votre propre machine !) et comme port de localhost : 8080.
Ainsi toute requête de votre navigateur web va être
envoyée sur votre port local
8080, mais celui-ci est « tunnelé » sur le port 80
de fbd-serv, qui va répondre par ce même canal.
- Les requêtes dans la barre du navigateur doivent avoir le
format
: http://localhost/~gr[ou]pe$i/index.html
- Via une machine windows
L'idée est la même, seulement il faut un client ssh qui
supporte le
"forwarding" de ports. Un exemple est le client PuTTY.
Une fois installé (immédiat), il s'agit de lui donner la
même commande que
ci-dessus, mais en mode graphique...
Soit :
- Menu Session
Choix du hostname à contacter : "mail.umh.ac.be"
Mode de connexion : ssh (port 22).
- Menu Ssh
Preferred Version : 2
Enable X11 forwarding : non (voir pourquoi : notes ci-dessous),
Add new forwarded port : source 8080, destination
fbd-serv.swapping.umh.ac.be:80
(ou même, cela fonctionne aussi : destination
proxy.umh.ac.be:8000, dans ce cas
c'est la machine proxy qui demande la page web, un arc (aller-retour)
dans le
chemin en plus),
Remote ports do the same (à cocher).
Maintenant, pour le navigateur, par exemple Internet Explorer (IE) :
Connexions> Options de numérotation
Décocher "Détecter automatiquement les paramètres
IE"
Cocher "Utiliser un serveur proxy"
Adresse : localhost, port 8080.
Maintenant il suffit de cliquer "Open" dans PuTTY, vous donnez votre
passwd
mail, puis une fois fait (i.e. le tunnel s'est créé) vous
démarrez IE, avec un
URL de type : http://localhost/~gr[ou]pe$i/index.html
Notes :
- Il vaut mieux avoir une connexion réseau rapide (ADSL) et
qui ne coupe pas
tous les 5 minutes, sous peine de relancer à chaque fois le
procédé. De plus il faut faire attention si vous utilisez
un
firewall à ne pas fermer en sortie le(s) port(s)
utilisé(s) par le(s) tunnel(s) (via PuTTY ou ssh texte).
- La bande passante étant limitée, le "X11
forwarding" a été désactivé
côté serveur, donc n'espérez pas ouvrir des
fenêtres X de fbd-serv sur votre machine locale, même si
vous avez un serveur X local (sous Windows : celui de Cygwin par
exemple...)
- Si vous avez compris le principe vous pouvez faire de même
avec
tout autre
service qui tourne sur fbd-serv, par exemple :
- Connexion MySQL : $ ssh -L
8306:fbd-serv.swapping.umh.ac.be:3306
mail.umh.ac.be, puis indiquer à votre client local mysql de se
connecter sur
localhost port 8306,
- Connexion CVS : $ ssh -L
8401:fbd-serv.swapping.umh.ac.be:2401
mail.umh.ac.be,
puis indiquer à votre client CVS local de se connecter sur
localhost port 8401
- Transfert de fichiers via scp : d'abord $ ssh -L
8022:fbd-serv.swapping.umh.ac.be:22 mail.umh.ac.be ; ensuite : $ scp -r
P 8022 moi@localhost:~/qqpart/ . (sens fbd-serv-->localhost, l'autre
sens étant analogue),
et sous Windows, tout ceci en démarrant autant d'instances de
PuTTY que nécessaire.
Rectificatif concernant le
point 2
ci-dessus : en fait il y a un moyen
d'obtenir des fenêtres X de fbd-serv chez soi (et même
connexion via
XDM). Il suffit de faire sur fbd-serv un "$ vncserver :0 -query
localhost"
, ceci ouvre un X virtuel qui demande ses
données à xdm, et qui écoute sur le port 5900 ;
ensuite faire un tunnel ssh de chez soi (port 5900)
vers le port 5900 de fbd-serv. Alors chez vous, vous lancez
vncviewer
localhost:0
, qui va automatiquement ouvrir la fenêtre de
login xdm (plus un xterm).
Rem 1 : si quelqu'un
à
déjà lancé vncserver sur :0 (ou moi un startx en
local), alors choisissez :1 ou :2 pour le display et rajoutez 1 ou 2 au
n° du port ci-dessus... Si l'on veut afficher dans le navigateur
(Java activé), alors il faut prendre les ports 5800+display pour
localhost et fbd-serv.
Voir man vncserver et man Xvnc.
Rem 2 :
C'est
amusant, mais pas forcément rapide... De plus cela consomme pas mal de
bande passante.
Rem 3 : On ne peut pas faire de
même avec un tunnel directement sur le port de xdm, car celui-ci
fonctionne en UDP, et non TCP.
- Bien sûr
toutes ces manipulations seraient
évitées si la
machine fbd-serv était accessible de
l'extérieur (comme mail, ou proxy, ou d'autres...), ceci est en
cours de réflexion/discussion.