Export de X par SSH - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 14-10-2003 à 22:50:21
Je crois que tu doit faire un export display en esperant que le routeur de ta fac ne bloque pas les connexions X.
Marsh Posté le 14-10-2003 à 22:56:55
HellIce a écrit : Je crois que tu doit faire un export display en esperant que le routeur de ta fac ne bloque pas les connexions X. |
Euh... Un export avec quoi ?
$DISPLAY est déjà à « localhost:10.0 ».
Marsh Posté le 14-10-2003 à 23:02:30
si tu sais rien du sujet, fais un search ou un coup de google
sinon, normalement, c'est l'affaire de 2 lignes à mddif mais il ets fort possible que ta fac bloque ça
de toute façon, le X Forwarding, c comme VNC: en local, ok, mais en longue distance, tu vas mourir...
Marsh Posté le 14-10-2003 à 23:10:34
Piksou a écrit : si tu sais rien du sujet, fais un search ou un coup de google |
Je demanderai demain si des gens ont réussi à faire fonctionner ça. Il y a une personne qui m'a dit qu'elle y était arrivée (sous Windows) mais sans m'en dire plus.
D'ailleurs, en regardant le fichier /etc/ssh/sshd_config du serveur, il y a les lignes:
|
La première ligne a été volontairement commentée !
Je me renseignerai.
Sinon pour mon utilisation de X, c'est d'abords pour tester et puis juste à l'occasion balancer des applications avec une interface graphique.
Marsh Posté le 14-10-2003 à 23:17:00
a mon avis, frachement, ce sera inutilisable, mais tu peux tjs expérimenter
normalement sur le serveur, il faut (si ma mémoire est exact)
ForwardAgent yes
ForwardX11 yes
Marsh Posté le 14-10-2003 à 23:18:55
http://www.openssh.org/faq.html#2.7
Marsh Posté le 14-10-2003 à 23:29:49
Dans /etc/ssh/ssh_config, il y a:
ForwardX11 yes
Dans /etc/ssh/sshd_config, il y a:
X11Forwarding yes
X11DisplayOffset 10
(c'est marrant, c'est un peu l'inverse dans la FAQ de OpenSSH )
Marsh Posté le 15-10-2003 à 00:07:09
houplaboom42 a écrit : xauth est bien installé sur la machine cible ? |
xauth est sur toute les machines.
Mais j'ai un doute par rapport au fonctionnement ! Lorsque je lance une application graphique à partir du SSH, elle apparaît dans une nouvelle fenêtre, ou j'ai besoin de l'appeller au moyen d'un programme particulier ?
Marsh Posté le 15-10-2003 à 00:35:06
je comprends pas :
tu as 3 pc A -ssh-> B -ssh-> C
et tu veux fowarder X de C à A ?
Si t'y arrive je suis prenneur
Parcontre si tu veux forwarder X de B à A ssh -CX ...
-C = compresse
-X = pour X
Marsh Posté le 15-10-2003 à 00:45:13
il suffit de créer un tunnel ssh en utilisant les capacités de port forwarding de ssh
dans un terminal chez toi :
ssh -L 22222:roberto:22 passerelle
dans un autre terminal toujours chez toi :
ssh -CX -p 22222 localhost
à condition que le X11forwarding soit activé sur roberto ça fonctionne.
pour ceux qui douteraient de la faisabilité de la chose, je viens de tester
Marsh Posté le 15-10-2003 à 22:36:58
FlamM a écrit : il suffit de créer un tunnel ssh en utilisant les capacités de port forwarding de ssh |
Je ne comprends pas comment tu fais !
Pourrais-tu écrire étape par étape ce que tu tapes dans un terminal ? Là, je ne vois pas à quel moment il faut que je donne tes lignes
Merci.
Marsh Posté le 16-10-2003 à 23:22:34
tu ouvres un premier terminal dans lequel tu tappes :
ssh -L 22222:adresse_ou_nom_de_roberto:22 adresse_ou_nom_de_la_passerelle
ce qui fait que tu vas te connecter sur la passerelle comme si t'avais fait un simple ssh adresse_de_la_passerelle mais en plus ça va forwarder le port 22 de roberto sur le port 22222 de ta machine.
tu laisses ce terminal dans un coin
tu ouvres un second terminal dans lequel tu fais
ssh -CX -p 22222 localhost
ce qui va te connecter à roberto directement avec le tunnel qu'on a créé juste avant qui a lié en quelque sorte ton port 22222 et le port 22 de roberto
Il ne te reste donc plus qu'à travailler dans ce deuxième terminal et vu qu'on a utilisé l'option X, les paquets X seront forwardés directement chez toi
est-ce que c'est un peu plus clair ?
Marsh Posté le 16-10-2003 à 23:40:22
Ça fonctionne !
Par contre j'ai eu à modifier un tout petit truc pour la 2e ligne à donner, j'ai mis:
ssh -CX -p 22222 localhost -l mon_identifiant_sur_le_serveur
Merci.
Marsh Posté le 16-10-2003 à 23:46:34
mais tout le plaisir est pour moi
Marsh Posté le 14-10-2003 à 22:40:33
Bonjour,
à ma fac, il y a une machine qui sert de passerelle sur laquelle je me connecte en SSH. À partir de là, je me connecte sur une autre machine (Roberto) pour pouvoir réellement travailler (l'autre n'a que très peu d'applis).
Si je me connecte en SSH en ligne de commandes sur Roberto, je n'ai aucun problème pour travailler dans un terminal, mais je n'arrive pas à exécuter d'applications graphiques
J'ai d'abords essayé « putty » sur ma Debian SID mais il fait une erreur fatale dès la connection.
J'ai alors essayé en console (j'ai activé l'affichage du débugage au cas où ça pourrait aider):
elshaman@camus:~$ ssh -vvv -X -C elshaman@pif.puf.huhuhu.fr
OpenSSH_3.6.1p2 Debian 1:3.6.1p2-9, SSH protocols 1.5/2.0, OpenSSL 0x0090703f
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Rhosts Authentication disabled, originating port will not be trusted.
debug2: ssh_connect: needpriv 0
debug1: Connecting to pif.puf.huhuhu.fr [147.210.13.65] port 22.
debug1: Connection established.
debug1: identity file /home/elshaman/.ssh/identity type -1
debug1: identity file /home/elshaman/.ssh/id_rsa type -1
debug3: Not a RSA1 key file /home/elshaman/.ssh/id_dsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: key_read: missing keytype
debug2: key_type_from_name: unknown key type 'Proc-Type:'
debug3: key_read: missing keytype
debug2: key_type_from_name: unknown key type 'DEK-Info:'
debug3: key_read: missing keytype
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
debug1: identity file /home/elshaman/.ssh/id_dsa type 2
debug1: Remote protocol version 2.0, remote software version 3.2.5 SSH Secure Shell (non-commercial)
debug1: no match: 3.2.5 SSH Secure Shell (non-commercial)
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_3.6.1p2 Debian 1:3.6.1p2-9
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: zlib,none
debug2: kex_parse_kexinit: zlib,none
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: kex_parse_kexinit: diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-dss
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,twofish128-cbc,cast128-cbc,twofish-cbc,blowfish-cbc,aes192-cbc,aes256-cbc,twofish192-cbc,twofish256-cbc,arcfour
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,twofish128-cbc,cast128-cbc,twofish-cbc,blowfish-cbc,aes192-cbc,aes256-cbc,twofish192-cbc,twofish256-cbc,arcfour
debug2: kex_parse_kexinit: hmac-sha1,hmac-sha1-96,hmac-md5,hmac-md5-96
debug2: kex_parse_kexinit: hmac-sha1,hmac-sha1-96,hmac-md5,hmac-md5-96
debug2: kex_parse_kexinit: none,zlib
debug2: kex_parse_kexinit: none,zlib
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: mac_init: found hmac-md5
debug1: kex: server->client aes128-cbc hmac-md5 zlib
debug2: mac_init: found hmac-md5
debug1: kex: client->server aes128-cbc hmac-md5 zlib
debug2: dh_gen_key: priv key bits set: 128/256
debug2: bits set: 497/1024
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
debug3: check_host_in_hostfile: filename /home/elshaman/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 1
debug3: check_host_in_hostfile: filename /home/elshaman/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 1
debug1: Host 'pif.puf.huhuhu.fr' is known and matches the DSA host key.
debug1: Found key in /home/elshaman/.ssh/known_hosts:1
debug2: bits set: 497/1024
debug1: ssh_dss_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: Enabling compression at level 6.
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: password
debug3: start over, passed a different list password
debug3: preferred publickey,keyboard-interactive,password
debug3: authmethod_lookup password
debug3: remaining preferred: ,keyboard-interactive,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
elshaman@pif.puf.huhuhu.fr's password: [...]
debug3: packet_send2: adding 16 (len 31 padlen 17 extra_pad 64)
debug2: we sent a password packet, wait for reply
debug1: Authentication succeeded (password).
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
debug1: Entering interactive session.
debug2: callback start
debug2: ssh_session2_setup: id 0
debug1: channel 0: request pty-req
debug3: tty_make_modes: ospeed 38400
debug3: tty_make_modes: ispeed 38400
debug3: tty_make_modes: 1 3
debug3: tty_make_modes: 2 28
debug3: tty_make_modes: 3 127
[ blabla inutile...]
debug3: tty_make_modes: 92 0
debug3: tty_make_modes: 93 0
debug2: x11_get_proto: /usr/bin/X11/xauth list :0.0 2>/dev/null
debug1: Requesting X11 forwarding with authentication spoofing.
debug1: channel 0: request x11-req
debug1: channel 0: request shell
debug2: fd 3 setting TCP_NODELAY
debug2: callback done
debug1: channel 0: open confirm rwindow 100000 rmax 16384
Last login: Tue Oct 14 2003 21:07:28 +0100 from ca-bordeaux-8-13
Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001
No mail.
elshaman@pif:~$ ssh roberto
elshaman's password: [...]
Authentication successful.
debug1: client_input_channel_open: ctype x11 rchan 1 win 30000 max 1024
debug1: client_request_x11: request from 147.210.13.65 32986
debug1: fd 7 setting O_NONBLOCK
debug2: fd 7 is O_NONBLOCK
debug1: channel 1: new [x11]
debug1: confirm x11
Linux roberto [...] i686 unknown
------------------------------------------------------------------------------
No mail.
elshaman@roberto:~$ echo $DISPLAY
localhost:10.0
elshaman@roberto:~$ xclock
debug1: client_input_channel_open: ctype x11 rchan 2 win 30000 max 1024
debug1: client_request_x11: request from 147.210.13.65 32989
debug1: fd 8 setting O_NONBLOCK
debug2: fd 8 is O_NONBLOCK
debug1: channel 2: new [x11]
debug1: confirm x11
debug1: X11 auth data does not match fake data.
X11 connection rejected because of wrong authentication.
debug1: X11 rejected 2 i0/o0
debug1: channel 2: read failed
debug1: channel 2: close_read
debug1: channel 2: input open -> drain
debug1: channel 2: ibuf empty
debug1: channel 2: send eof
debug1: channel 2: input drain -> closed
debug1: channel 2: write failed
debug1: channel 2: close_write
debug1: channel 2: output open -> closed
debug1: X11 closed 2 i3/o3
debug1: channel 2: send close
debug1: channel 2: rcvd close
debug1: channel 2: is dead
debug1: channel 2: garbage collecting
debug1: channel_free: channel 2: x11, nchannels 3
debug3: channel_free: status: The following connections are open:\015
#0 client-session (t4 r0 i0/0 o0/0 fd 4/5)\015
#1 x11 (t4 r1 i0/0 o0/0 fd 7/7)\015
#2 x11 (t7 r2 i3/0 o3/0 fd 8/8)\015
debug3: channel_close_fds: channel 2: r 8 w 8 e -1
X connection to localhost:10.0 broken (explicit kill or server shutdown).
elshaman@roberto:~$
Comme on peut le voir, ça ne fonctionne pas
Quelqu'un saurait comment faire ?
Merci.