Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#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

titimaster a écrit :
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 hmm

#12 Le 06/04/2008, à 16:11

kralisec

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::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

YokoUno a écrit :
channel 3: open failed: connect failed: Connection refused

Visiblement, le tunnel n'arrive pas à s'établir hmm

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 smile



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

kralisec a écrit :
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::5901


a+,
Laurent.

tjs pareil hmm

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 hmm
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

YokoUno a écrit :

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 smile


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

titimaster a écrit :

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

kralisec a écrit :

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 hmm

@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 hmm

Là, je suis vraiment paumé … hmm

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 wink


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

titimaster a écrit :

@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 hmm

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à yikes


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