#1 Le 05/04/2008, à 18:38
- titimaster
vnc - tunneling ssh
Bonjour,
Je cherche a faire marcher vnc avec tunneling ssh. Je test en local sur le pc de ma copine avant de tester sur l'extérieur.
En direct, ca marche :
vncviewer mustang
via ssh, ca marche pas :
ssh -L 5901:localhost:5900 -C mustang
connection ok
puis :
vncviewer localhost:1
VNC Viewer Free Edition 4.1.1 for X - built Sep 10 2007 17:17:04
Copyright (C) 2002-2005 RealVNC Ltd.
See http://www.realvnc.com for information on VNC.
Sat Apr 5 18:37:10 2008
main: unable to resolve host by name: Connection timed out (110)
merci de votre aide.
Hors ligne
#2 Le 05/04/2008, à 18:45
- dwan
Re : vnc - tunneling ssh
unable to resolve host by name: Connection timed out (110)
On dirait qu'il n'aime pas qu'on appelle l'ordi par son nom. Tu devrais essayer avec son IP.
Auto-hébergé !
HP dv6164ea
Hors ligne
#3 Le 05/04/2008, à 18:45
- titimaster
Re : vnc - tunneling ssh
c pareil avec l'ip
ip du pc de ma copine
127.0.0.1 a la place de localhost
ca change rien
Dernière modification par titimaster (Le 05/04/2008, à 18:46)
Hors ligne
#4 Le 05/04/2008, à 18:50
- dwan
Re : vnc - tunneling ssh
J'ai retrouvé mon pense-bête sur le tunneling :
tunnel ssh vers OrdiDistant :
ssh -L 5900:localhost:5900 -p 22 ipOrdiDistant
puis connection vnc vers OrdiDistant :
vncviewer localhost:5900
localhost:1 signifie que tu demandes à VNC d'écouter le port 1, alors qu'il faut utiliser le port 5900.
Auto-hébergé !
HP dv6164ea
Hors ligne
#5 Le 05/04/2008, à 19:43
- titimaster
Re : vnc - tunneling ssh
deja essaye aussi
vncviewer localhost:5901 (dans mon cas) ou comme tu le marque.
A noter que tu n'as pas besoin de specifier le port 22 dans ton exemple.
Dernière modification par titimaster (Le 07/04/2008, à 09:49)
Hors ligne
#6 Le 05/04/2008, à 20:04
- dwan
Re : vnc - tunneling ssh
Curieux.
Quand tu dis que ça ne marche pas, tu veux dire que tu as le même message d'erreur?
Auto-hébergé !
HP dv6164ea
Hors ligne
#7 Le 05/04/2008, à 20:19
- titimaster
Re : vnc - tunneling ssh
oui ... tout pareil :s
Hors ligne
#8 Le 06/04/2008, à 08:34
- yvan78
Re : vnc - tunneling ssh
ssh -L 5901:localhost:5900 -C mustang
connection ok
Et là, pas d'erreur/message particulier: Genre une config du serveur ssh interdisant les tunnels => tu as bien le prompt de connection, mais pas le tunnel pour passer VNC?
Si tu n'as pas mis user@mustang, ca suppose le même user sur les 2 machines.
Pour le reste, c'est bien localhost:1 à utiliser pour vncviewer (c'est le N° de display, qui correspond effectivement à un port 59xx avec xx=N°display mais vncviewer ajoute déjà le 5900 à l'argument passé).
Bref, à moins d'avoir un /etc/hosts ou le localhost n'est pas défini pour le faire correspondre à ce nom (et celui de la machine)??? Mais vu que tu as déjà essayé avec l'IP localhost je ne voit pas.
En direct, ça marche donc pas d'incompatibilités possible entre vnc client et serveur (par contre, j'espère que les ports 59xx ne sont pas ouverts au niveau de ta box/modem et donc bloqués pour qui ne chercherait pas à se connecter en direct, sans ssh, du dehors du réseau local?! Une fois le problème résolu, tu devrais d'ailleurs bloquer ça aussi au niveau du FW du PC serveur, surtout si c'est un portable qui se ballade un peu sur d'autres réseaux)...
A part lançer ssh et/ou vncviewer avec des options de verbose, je vois pas.
#9 Le 06/04/2008, à 10:27
- titimaster
Re : vnc - tunneling ssh
je n'ai pas mis le user sur mon message, mais je m'en sers bien.
Voici les commandes avec tous les messages :
titimaster@spitfire:~$ vncviewer mustang
VNC Viewer Free Edition 4.1.1 for X - built Sep 10 2007 17:17:04
Copyright (C) 2002-2005 RealVNC Ltd.
See http://www.realvnc.com for information on VNC.
Sun Apr 6 10:26:28 2008
CConn: connected to host mustang port 5900
CConnection: Server supports RFB protocol version 3.7
CConnection: Using RFB protocol version 3.7
Sun Apr 6 10:26:29 2008
TXImage: Using default colormap and visual, TrueColor, depth 24.
CConn: Using pixel format depth 6 (8bpp) rgb222
CConn: Using ZRLE encoding
Sun Apr 6 10:26:39 2008
CConn: Throughput 20000 kbit/s - changing to hextile encoding
CConn: Throughput 20000 kbit/s - changing to full colour
CConn: Using pixel format depth 24 (32bpp) little-endian rgb888
CConn: Using hextile encoding
titimaster@spitfire:~$ ssh -L 5901:localhost:5900 -C tibye@mustang
tibye@mustang's password:
Linux mustang 2.6.22-14-generic #1 SMP Tue Feb 12 07:42:25 UTC 2008 i686
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
Last login: Sat Apr 5 20:20:18 2008 from spitfire
tibye@mustang:~$
titimaster@spitfire:~$ vncviewer localhost:1
VNC Viewer Free Edition 4.1.1 for X - built Sep 10 2007 17:17:04
Copyright (C) 2002-2005 RealVNC Ltd.
See http://www.realvnc.com for information on VNC.
Sun Apr 6 10:25:57 2008
main: unable to resolve host by name: Connection timed out (110)
Dernière modification par titimaster (Le 06/04/2008, à 10:40)
Hors ligne
#10 Le 06/04/2008, à 10:29
- titimaster
Re : vnc - tunneling ssh
connection ssh en verbose :
titimaster@spitfire:~$ ssh -v -L 5901:localhost:5900 -C tibye@mustang
OpenSSH_4.6p1 Debian-5ubuntu0.2, OpenSSL 0.9.8e 23 Feb 2007
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to mustang [192.168.1.10] port 22.
debug1: Connection established.
debug1: identity file /home/titimaster/.ssh/identity type -1
debug1: identity file /home/titimaster/.ssh/id_rsa type -1
debug1: identity file /home/titimaster/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_4.6p1 Debian-5ubuntu0.2
debug1: match: OpenSSH_4.6p1 Debian-5ubuntu0.2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.6p1 Debian-5ubuntu0.2
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 zlib@openssh.com
debug1: kex: client->server aes128-cbc hmac-md5 zlib@openssh.com
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'mustang' is known and matches the RSA host key.
debug1: Found key in /home/titimaster/.ssh/known_hosts:3
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /home/titimaster/.ssh/identity
debug1: Trying private key: /home/titimaster/.ssh/id_rsa
debug1: Trying private key: /home/titimaster/.ssh/id_dsa
debug1: Next authentication method: password
tibye@mustang's password:
debug1: Enabling compression at level 6.
debug1: Authentication succeeded (password).
debug1: Local connections to LOCALHOST:5901 forwarded to remote address localhost:5900
debug1: Local forwarding listening on 127.0.0.1 port 5901.
debug1: channel 0: new [port listener]
debug1: Local forwarding listening on ::1 port 5901.
debug1: channel 1: new [port listener]
debug1: channel 2: new [client-session]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = fr_FR.UTF-8
Linux mustang 2.6.22-14-generic #1 SMP Tue Feb 12 07:42:25 UTC 2008 i686
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
Last login: Sun Apr 6 10:24:39 2008 from spitfire
tibye@mustang:~$
netstat :
titimaster@spitfire:~$ netstat -taupe | grep ssh
(Tous les processus ne peuvent être identifiés, les infos sur les processus
non possédés ne seront pas affichées, vous devez être root pour les voir toutes.)
tcp 0 0 spitfire.USS_LINCO:5901 *:* LISTEN titimaster 21807 6332/ssh
tcp 0 0 spitfire.local:52040 mustang:ssh ESTABLISHEDtitimaster 21703 6332/ssh
tcp6 0 0 ip6-localhost:5901 *:* LISTEN titimaster 21808 6332/ssh
Dernière modification par titimaster (Le 06/04/2008, à 10:36)
Hors ligne
#11 Le 06/04/2008, à 13:23
- YokoUno
Re : vnc - tunneling ssh
Salut,
j'ai quasiment le même problème que titimaster.
Machine locale: dapper
Machine distante: debian testing
Sur celle-ci:
- pas de firewall, juste fail2ban pour l'instant.
- le serveur vnc est celui de gnome: vino
Elles sont derrière une freebox v4 en routeur.
Sans tunnel, vncviewer fonctionne parfaitement.
Avec tunnel, j'ai essayé 2 clients vnc:
avec /usr/bin/xrealvncviewer (le client "normal") l'erreur renvoyée est:
ReadFromRFBServer: rdr::EndOfStream
avec /usr/bin/xvnc4viewer (le client d'un autre package) l'erreur renvoyée est:
CConn: connected to host localhost port 5901
main: End of stream
Dans les deux cas, dans le terminal ssh j'ai un retour d'erreur:
channel 3: open failed: connect failed: Connection refused
Visiblement, le tunnel n'arrive pas à s'établir
#12 Le 06/04/2008, à 16:11
- kralisec
Re : vnc - tunneling ssh
deja essaye aussi
vncviewer localhost:5901 (dans mon cas) ou comme tu le marque.
A notre que tu n'as pas besoin de specifier le port dans ton exemple.
J'ai pas tout lu, mais si c'est vnc en ligne de commande: entre voir:
vncviewer localhost::5901
a+,
Laurent.
Lorsqu'on s'occupe d'informatique il faut faire comme les canards...
Paraître calme en surface et pédaler comme un forcené par en-dessous
Hors ligne
#13 Le 06/04/2008, à 16:16
- kralisec
Re : vnc - tunneling ssh
channel 3: open failed: connect failed: Connection refused
Visiblement, le tunnel n'arrive pas à s'établir
Le problème peut venir d'une différence entre les versions de vnc:
un serveur en version 3.3 et un client en version 4.0
Bon amusement
a+,
Laurent.
Dernière modification par kralisec (Le 06/04/2008, à 20:42)
Lorsqu'on s'occupe d'informatique il faut faire comme les canards...
Paraître calme en surface et pédaler comme un forcené par en-dessous
Hors ligne
#14 Le 06/04/2008, à 20:10
- titimaster
Re : vnc - tunneling ssh
titimaster a écrit :deja essaye aussi
vncviewer localhost:5901 (dans mon cas) ou comme tu le marque.
A notre que tu n'as pas besoin de specifier le port dans ton exemple.J'ai pas tout lu, mais si c'est vnc en ligne de commande: entre voir:
vncviewer localhost::5901a+,
Laurent.
tjs pareil
Hors ligne
#15 Le 06/04/2008, à 20:34
- kralisec
Re : vnc - tunneling ssh
chtite récap:
ssh -L 5901:localhost:5900 mustang
puis dans un autre prompt dans la machine locale:
vncviewer localhost::5901
(fait un copié/collé des commandes pour éviter les blagues)
tu peux donner le message d'erreur qui est retourné ?
sinon tente voir:
xhost +
ssh -X -L 5901:localhost:5900 mustang
puis dans le prompt ouvert sur la machine distante:
vncviewer localhost::5900
a+,
Laurent.
Lorsqu'on s'occupe d'informatique il faut faire comme les canards...
Paraître calme en surface et pédaler comme un forcené par en-dessous
Hors ligne
#16 Le 06/04/2008, à 21:34
- YokoUno
Re : vnc - tunneling ssh
Bon j'ai résolu mon problème.
J'utilise dans ce qui suit les notations de titimaster:
Machine locale = spitfire
Machine distante = mustang
Dans ma ligne de commande ssh, j'avais un nom de machine
ssh -L 5901:spitfire:5900 moi@mustang
Or ça devait être:
ssh -L 5901:mustang:5900 moi@mustang
Autrement dit, à la suite de -L le localhost est celui de la machine distante, pas celui de la machine locale.
J'ai essayé avec trois clients différents, deux en ligne de commande et un en GUI: Terminal Server Client dans le menu Applications/Internet.
Constats:
1) la notation :: qui attend un numéro de port plutôt qu'un numéro de display n'est pas toujours prise en charge:
client -> xrealvncviewer 3.3.7 | xvnc4viewer 4.1.1 | tsclient 0.140
| |
nom du paquet -> xvncviewer | xvnc4viewer | tsclient
-----------------------------------------------------------------------------------------
localhost:1 | oui | oui | oui
| | |
localhost::5901 | NON | oui | oui
| | |
spitfire:1 | oui | oui | oui
| | |
spitfire::5901 | NON | oui | oui
2) vncviewer tel qu'on utilise dans un terminal se trouve dans /usr/bin et c'est un lien symbolique. Suivant le paquet, on utilise donc soit xrealvncviewer, soit xvnc4viewer.
Attention: si on installe simultanément les deux paquets, vncviewer pointe sur le binaire du dernier paquet installé. Pour cette raison il vaut mieux invoquer les clients par leur vrai nom afin d'éviter les confusions, plutôt que par vncviewer.
3) le client le plus "ancien", xrealvncviewer, prend parfaitement en charge le protocole 3.7:
VNC server supports protocol version 3.7 (viewer 3.3)
@titimaster: évidemment pour toi ça fait pas avancer le shmilblik
Néanmoins à mon avis tu devrais essayer de tracer les erreurs du côté de ton client vnc plutôt que du côté de ssh.
Avec xvnc4viewer tu as une option de log intéressante:
/usr/bin/xvnc4viewer -log *:stderr:100 spitfire:1
#17 Le 07/04/2008, à 09:33
- titimaster
Re : vnc - tunneling ssh
Autrement dit, à la suite de -L le localhost est celui de la machine distante, pas celui de la machine locale.
Je vais essayer ca.
Il est vrai que dans les docs que j'ai lu sur le tunneling ssh, toutes (sauf celle de ubuntu) indiquaient qu'il fallait mettre la machine distante et non localhost.
On vera ca ce soir. Mais dans ce cas, comment vérifier que je passe bien par le tunnel ssh ? comment vérifier que mes données sont criptées ?
apres, si ça ne marche pas, j'essayerais ce que me dit kralisec
En tout cas, marci de votre aide.
Dernière modification par titimaster (Le 07/04/2008, à 09:34)
Hors ligne
#18 Le 07/04/2008, à 11:15
- kralisec
Re : vnc - tunneling ssh
il est vrai que dans les docs que j'ai lu sur le tunneling ssh, toutes (sauf celle de ubuntu) indiquaient qu'il fallait mettre la machine distante et non localhost.
il faut se placer du point de vue de la machine distante, si tu utilises localhost alors c'est le localhost distant,
si tu utilises une IP alors il faut que cette IP soit accessible depuis le point de vue de la machine distante.
a+,
Laurent.
Lorsqu'on s'occupe d'informatique il faut faire comme les canards...
Paraître calme en surface et pédaler comme un forcené par en-dessous
Hors ligne
#19 Le 07/04/2008, à 14:03
- yvan78
Re : vnc - tunneling ssh
il faut se placer du point de vue de la machine distante, si tu utilises localhost alors c'est le localhost distant,
si tu utilises une IP alors il faut que cette IP soit accessible depuis le point de vue de la machine distante.
Il faut surtout voir que l'on crée, à travers le tunnel ssh, une relation cryptée entre 2 couples port/machine (ici, localhost:5901 et machine_distante:5900).
Et la syntaxe, c'est bien:
ssh -L port-local:HOSTNAME:port-distant machine-distante
CF par exemple ce shéma clair:
http://www.think-underground.com/index.php?post/2007/02/24/398-tunnel-ssh-ssh-l-local-et-ssh-r-remote-en-bref
Et quand on établit le tunnel de sa machine pour usage sur sa machine, on a HOSTNAME qui est bien le localhost (ou 127.0.0.1, adresse IP de la boucle locale).
Non, moi ce qui ma chagrinait un peu c'est qu'il semblait que le tunnel (cf qq posts au dessus) semblait indiquer un tunnel ssh établi... en IPV6! Pas évident que VNC n'en veuille pas un en IPV4.
Te concernant, attention: Ton tunnel n'étant pas établi du localhost, tu dois te connecter en direct, sans passer par un tunnel! Installe firestarter (ou autre surcouche graphique a IPTables) et fait une politique entrante fermée par défaut... pour n'ouvrir que le 22 du SSH en entrée... et je pense que ton VNC ne va plus fonctionner!
A+
#20 Le 07/04/2008, à 15:44
- titimaster
Re : vnc - tunneling ssh
Vous allez me faire perdre mon latin !!!
@kralisec, comment je peux etre sur le localhost distant ??? localhost, comme son nom l'indique, c'est la machine sur laquelle je travaille... comprends pas
@yvan78, moi aussi ca m'a choqué ce IPV6 ... ce soir, je vais essayer en forçant l'IPV4.
Dernière modification par titimaster (Le 07/04/2008, à 15:44)
Hors ligne
#21 Le 08/04/2008, à 09:43
- titimaster
Re : vnc - tunneling ssh
Bon, alors, à priori, le problème vient de mon poste client.
Hier donc, j'ai réussi à me connecter avec le pc de ma copine sur un serveur externe (sur le net quoi) avec la méthode décrite dans la doc (utilisation de localhost) en spécifiant ipv4 ou pas.
Même manip sur mon pc, en spécifiant ipv4 ou pas, ca ne marche pas
Là, je suis vraiment paumé …
Hors ligne
#22 Le 08/04/2008, à 10:09
- iuchiban
Re : vnc - tunneling ssh
Je te donne ma config :
- PC de ma copine
- hostname : hikaru
- IP locale : 192.168.0.11
- IP freebox net : @IPv4 10.a.b.c
- mon PC
- dans mon fichier /etc/hosts j'ai ajouté
10.a.b.c hikaru
- freebox de ma copine : redirection du port 22 vers son IP
De chez moi, j'ouvre un terminal, je lance :
ssh -L 5901:localhost:5900 -C <UserDeMaCopine>@hikaru
Puis ctrl + shift + t pour ouvrir un onglet dans le terminal et :
vncviewer localhost:1
et ca marche.
Essaie voir dans ta config si tu as quelque chose qui se rapproche de ça
C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.
Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.
Hors ligne
#23 Le 08/04/2008, à 10:38
- kralisec
Re : vnc - tunneling ssh
@kralisec, comment je peux etre sur le localhost distant ??? localhost, comme son nom l'indique, c'est la machine sur laquelle je travaille... comprends pas
Chaque machine à son localhost, lorsque tu utilises ssh tu es physiquement sur la machine distante,
le localhost utilisé dans la commande ssh est le localhost distant
je sais pas si je suis clair là
ceci-dit je crois que Yvan78 a péché la bonne information: ton problème doit venir de ipv6
a+,
Laurent.
Lorsqu'on s'occupe d'informatique il faut faire comme les canards...
Paraître calme en surface et pédaler comme un forcené par en-dessous
Hors ligne
#24 Le 08/04/2008, à 11:06
- iuchiban
Re : vnc - tunneling ssh
Bah j'ai ipv6 sur ma freebox et sur celle de ma copine, j'ai une adresse ipv6 sur mon poste ainsi que celui de ma copine et ca marche bien.
C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.
Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.
Hors ligne
#25 Le 08/04/2008, à 11:34
- titimaster
Re : vnc - tunneling ssh
oui oui, ca marche en ipv6 (pc de ma copine client, pc de son frere serveur, via le net ).
J'ai le même genre d'installation sur ma machine (cad, assez basique), et ca ne marche pas ...
Hors ligne