Rsh (lancement d'application distante)

Comment utiliser cette commande sur Etch?
Quels fichiers faut il configurer et comment?
Quel démon il faut lancer pour ouvrir ce fameux port 6000?

Mon but c’est juste de m’amuser à faire une manipulation qui était normalement possible avant. À partir d’une machine A, lancer une application sur une machine B qui s’affichera sur une machine C. C’est inutile mais c’est pour le sport.

Je sais que l’histoire du port 6000 est fortement déconseillé et est désactivé je crois à partir de Debian Sarge. Si une solution existe en ssh je veux bien. Mais j’aimerai bien une solution de ce style dmon@machineA $ rsh machineB xgraph -display machineC:0

Ce qui suit, je sais le faire :

il ne faut pas utiliser rsh, et pour ssh, il suffit d’ajouter au bout de l’instruction ssh de connection que tu utilises habituellement la commande que tu veux lancer (elle remplace alors le lancement du shell).
Mais as tu regardé au moins le man ?

Si, si j’avais lu ssh mais il y a longtemps déjà. J’avais déjà oublié l’options commande.

dmon@Etchy $ ssh -X 192.168.0.2 xeyes -display 192.168.0.50:0.0 dmon@192.168.0.2's password: Error: Can't open display: 192.168.0.50:0.0
Pourtant j’ai fait xhost + sur toutes les machines. Un coup de wireshark m’a bien montré que 192.168.0.2 a bien cherché à ouvrir un connexion sur port 6000 de 192.168.0.50.

Tu n’as pas à faire un xhost + (qui en plus ne fonctionne pas parceque sous debian, le serveur X n’écoute de toutes les manières que sur le localhost pour raison de sécurité), et tu n’as pas non plus besoin de préciser le display: l’option -X fixe le display pour que ça s’affiche sur le display de la session depuis laquelle tu fais le ssh (qui apparait en remote comme :0.10, mais tu n’as pas à t’en préoccuper).

C’est dans le man de ssh, d’ailleurs.

Justement je veux envoyer l’affichage sur une autre machine, comment l’indiquer?
Je veux faire la manipulation sur trois machines.

Aïe ! je crois que l’écoute du serveur X limitée au localhost est inscrite au niveau de la compil.
J’ai cherché pour voir si je trouvais une directive “listen” ou autre qui restreignait au localhost quelquepart dans /etc/X11, mais je n’ai rien trouvé.
En tout cas, ça fait bien longtemps que le serveur n’écoute plus sur les interfaces externes…

c est pas dans le fichier X0.hosts sous /etc/ qu il faut que tu renseignes cela ! (enfin moi c est ce que j ai fait)

Comment?
Avec quoi?

Je n’ai que ça :

dmon@Etchy $ ls /etc/X11/ app-defaults X Xresources cursors XF86Config-4 xserver default-display-manager XF86Confing-4.Old.octave Xsession fonts xinit Xsession.d ja_JP.eucJP xkb Xsession.options rgb.txt xorg.conf xsm rstart xorg.conf.Old XvMCConfig sysconfig xorg.conf.original-0 Xwrapper.config
Je n’ai pas ce fichier.

ahillerin: le nom de fichier que tu donnes me semble peu catholique. Tu es sûr ?

dmon: En tous cas, je crois que j’ai trouvé ou débloquer l’écoute. Dans /etc/X11/xinit/xserverrc, il y a une ligne exec /usr/bin/X11/X -nolisten tcp ou je pense qu’il faut enlever le nolisten tcp.
Quoi qu’il en soit, ne fais pas un xhost +, ce n’est pas sûr du tout. Tu peux faire un xhost +@, mais il vaut mieux que tu te documentes sur xauth qui est la manière sûre d’ouvrir le display, maintenant (et que je ne sais pas utiliser, ceci étant dit).

[quote=“mattotop”]Aïe ! je crois que l’écoute du serveur X limitée au localhost est inscrite au niveau de la compil.
J’ai cherché pour voir si je trouvais une directive “listen” ou autre qui restreignait au localhost quelquepart dans /etc/X11, mais je n’ai rien trouvé.
En tout cas, ça fait bien longtemps que le serveur n’écoute plus sur les interfaces externes…[/quote][code]dmon@Etchy $ cat /etc/X11/xinit/xinitrc
#!/bin/sh

$Xorg: xinitrc.cpp,v 1.3 2000/08/17 19:54:30 cpqbld Exp $

/etc/X11/xinit/xinitrc

global xinitrc file, used by all X sessions started by xinit (startx)

invoke global X session script

. /etc/X11/Xsession
dmon@Etchy:~$ cat /etc/X11/xinit/xserverrc
#!/bin/sh

$Id: xserverrc 189 2005-06-11 00:04:27Z branden $

exec /usr/bin/X11/X -dpi 100 -nolisten tcp[/code]

C’est ce fameux -nolisten tcp qui doit peut être causé un petit soucis. Je l’avais déjà retiré mais ça ne change rien.

quote="mattotop"
l’écoute. Dans /etc/X11/xinit/xserverrc, il y a une ligne
(…)[/quote]

oops, j’ai lu trop vite… chez moi ce n’est pas la même organisation:[quote=“xserverrc”]#!/bin/sh

$Id: xserverrc 189 2005-06-11 00:04:27Z branden $

exec /usr/bin/X11/X -nolisten tcp[/quote]et[quote=“xinitrc”]#!/bin/bash

$Xorg: xinitrc.cpp,v 1.3 2000/08/17 19:54:30 cpqbld Exp $

/etc/X11/xinit/xinitrc

global xinitrc file, used by all X sessions started by xinit (startx)

invoke global X session script

. /etc/X11/Xsession[/quote]

:blush: :blush: :blush:
J’ai relu trop vite: c’est pareil chez moi en fait…
Bon, mais tu as essayé la suppression du nolisten >et< le xhost + ?

oui je suis sur!
en fait le fichier /etc/X0.hosts t evite de faire un xhosts + ; tu y mets juste le noms des machines; c est tout;

en revanche au niveau securite c est pas top du tout. En ce qui me concerne je suis dans un reseau completement clos, ferme, independant blablabla, et je m autorise meme le rsh :wink:

ahillerin donne un exemple?

Attention je te repete au niveau securite cela ne vaut rien!!!

dans mon /etc/hosts j y ai defini mes machines - eg:

192.168.0.2 acc2
192.168.0.3 acc3
192.168.0.4 acc4
…blablabla

mon /etc/X0.hosts
acc2
acc3
acc4
…blablabla

Oups, j ai aussi les lignes dans (avec gnome) /etc/gdm/gdm.conf a
DisallowTCP=false

ahillerin j’ai un doute tu utilises ssh ou rhost?

Quand tu fais nmap sur ta machine tu as le port 6000 d’ouvert. Je n’ai toujours pas réussi.

À tous, pouvez vous faire comme moi? C’est à dire de donner le contenu des fichiers quitte à modifier légèrement le contenu pour des raisons de sécurité et s’il est trop long de montrer quelques lignes avant ou après les endroits à modifier. Exemple dans le fichier gdm.conf il faut modifier au bon endroit.

Il ne s’agit pas d’envoyer bouler en disant il suffit de lire le man, rien n’empêche d’être précis.

quote="mattotop"Bon, mais tu as essayé la suppression du nolisten >et< le xhost + ?[/quote] :question:
sur la machine ou se situe le display, bien sûr.

[quote=“mattotop”]quote="mattotop"Bon, mais tu as essayé la suppression du nolisten >et< le xhost + ?[/quote] :question:
sur la machine ou se situe le display, bien sûr.[/quote]

Oui.
Mais qu’est ce qui lance ce fameux démon sur le port 6000?

Error: Can't open display: dhcpclient1:0 J’ai toujours ce message.

quote="dmon"
Mais qu’est ce qui lance ce fameux démon sur le port 6000?[/quote]en root netstat -lp --inet

[quote=“dmon”]Error: Can't open display: dhcpclient1:0 J’ai toujours ce message.[/quote] Si ta machine ou tu veux afficher s’appelle bien dhcpclient1, c’est juste que le display n’est pas ouvert: ça ne donne pas d’information supplémentaire.