[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: fwbuilder: cannot connect to X server



El Miércoles, 20 de Septiembre de 2006 23:32, Miguel Angel Velasco escribió:
> Hola de nuevo, ejecuto lo siguiente con los siguientes resultados:
> server:/home/mangel# export DISPLAY=192.168.1.101:0.0
> server:/home/mangel# /usr/bin/fwbuilder
> fwbuilder: cannot connect to X server 192.168.1.101:0.0

Veamos, tenemos dos máquinas: A y B.
Tú quieres usar la A y declarar en ella la variable:
  DISPLAY=IP_B:0.0
para que las aplicaciones que ejecutas en A se visualicen en B, ¿es así?

En ese caso NO es suficiente con lo que has hecho porque por esa regla de tres 
yo ahora podría poner en mi ordenador:
  DISPLAY=TU_IP:0.0
y lanzar aplicaciones gráficas en tu ordenador. Tiene que haber algo más.

Y ahí dos cosas:

1) Por defecto una buena Debian no lanza el servidor X escuchando peticiones 
externas, sólo internas. Así que aunque los programas de la máquina A lancen 
sus instrucciones de dibujado a la máquina B, esas peticiones se perderán 
porque B no está escuchándolas (definitivamente el puerto 6000 está cerrado 
al exterior).
Esto se debe a que el servidor X se ejecuta con la opción "nolisten":
  /usr/bin/X11/X -dpi 100 -nolisten tcp
Esto se debería cambiar en el fichero:
  /etc/X11/xinit/xserverrc

2) Aún cambiando lo anterior faltan cosas, porque si no, si resulta que tú 
habilitas las X al exterior yo podría directamente lanzar en ellas 
aplicaciones gráficas. No parece muy típico de Debian ni de GNU/Linux esa 
falta de seguridad.
Como en todo, la solución pasa por dar permisos pero esto es importante:
- Los permisos SOLO los puede dar el usuario (y no hablo de root) que en ese 
momento esté inmerso en su sesión X en la máquina B, ya sea con su KDE, Gnome 
o lo que sea.
Y los permisos se dan con el comando "xhost" aunque me suena que hay opciones 
mejores (aquí pido ayuda pues no tengo ni idea de las alternativas).
En cualquier caso con el comando "xhost blablalbla" le das permiso a qué 
determinadas máquinas o IP's a lanzar sus aplicaciones gráficas en tu sesión 
gráfica (o sea, en la sesión gráfica del usuario normalucho en B).
Haz un "man xhost" pero sobre todo evita lo cómodo, es decir "xhost +", porque 
en ese caso SI me estarías permitiendo a mí o a quien fuese abrir 
aplicaciones gráficas en tu sesión gráfica.


PD: A todo esto no tengo ni idea de lo que es el fwbuilder y ni si la forma 
lógica de funcionar es lanzando la aplicación gráfica sobre otra máquina. Tal 
vez lo puedas hacer todo en la misma máquina pero para eso necesitas 
igualmente dar permisos con xhost y por supuesto tener una sesion gráfica 
arrancada.


-- 
Iñaki



Reply to: