Conexión de reenvío de PuTTY, CygwinX y X11 rechazada


10

Ya no puedo reenviar X11 usando KiTTY / PuTTY a CygwinX.

Me estoy conectando a una máquina Ubuntu Server 14.10 que está configurada correctamente para permitir el reenvío X11. Yo soy capaz de iniciar la expedición X11 usando Cygwin xterm y de otras máquinas Linux.

Estoy usando CygwinX [1.7.34 (0.285 / 5/3)] y KiTTY 0.64.0.1 (bifurcación PuTTY, también probé PuTTY), en Win7.

He verificado mi variable de pantalla y he intentado deshabilitar el control de acceso xhost en Cygwin xterm.

$ echo $DISPLAY
:1

$ xhost +
access control disabled, clients can connect from any host

Mi KiTTY / PuTTY está configurado para habilitar el reenvío X11 y se configura la pantalla correcta. He intentado: 1 y: 1.0.

Captura de pantalla de configuración de KiTTY X11

Cuando envío SSH al servidor, mi variable DISPLAY se establece y se actualiza xauth. He eliminado mi .Xauthority y la he recreado para verificar.

user@server:~$ echo $DISPLAY
localhost:10.0
user@server:~$ xauth list
server/unix:10  MIT-MAGIC-COOKIE-1  3983b2d7f3d5f9f66d9796997771bf82

Cuando intento iniciar una aplicación X11 me sale el siguiente error.

user@server:~$ xterm
KiTTY X11 proxy: unable to connect to forwarded X server: Network error: Connection refused
xterm: Xt error: Can't open display: localhost:10.0

XWin.exe está escuchando en el puerto 34576 si eso es importante.

[XWin.exe]
 TCP    127.0.0.1:34576        0.0.0.0:0              LISTENING

Creo que hay un problema de software o configuración que me falta, ya que estoy viendo esto con múltiples servidores y máquinas cliente. Cualquier ayuda sería apreciada.


$DISPLAYen la máquina remota debe apuntar a la dirección de su escritorio, no localhost.
lcd047

2
@ lcd047 No, absolutamente ahora. $DISPLAYen la máquina remota debe apuntar a localhost. SSH hace el reenvío.
Gilles 'SO- deja de ser malo'

Instalé Cygwin de 32 bits para eliminar Cygwin64 como variable. Ningún cambio. Aún recibiendo la conexión rechazó el error.
SeeJayEmm

@Gilles: El punto que estaba tratando de hacer fue que, dado que $DISPLAYen la máquina remota no apunta al escritorio del OP, el reenvío X11 no ocurrió . De lo contrario, es posible que $DISPLAYla máquina remota ni siquiera exista si la máquina remota no está ejecutando un servidor X (que de todos modos no tiene nada que ver con la pregunta inicial).
lcd047

3
@ lcd047 No. Por favor verifique sus hechos. Si ocurre el reenvío X11, entonces DISPLAYapunta a localhost. SSH escucha en un puerto TCP en la máquina remota y reenvía los paquetes. Si se DISPLAYapunta a la máquina local, eso indicaría que no se reenvía a través de SSH, sino en una conexión TCP directa, en texto sin formato, y posiblemente a una dirección IP que ni siquiera tiene una ruta.
Gilles 'SO- deja de ser malvado'

Respuestas:


9

Ok, descubrí la solución a mi propio problema.

De forma predeterminada, CygwinX ya no escucha las conexiones tcp (Cyg SSH está utilizando sockets Unix para conectarse). Para habilitar las conexiones tcp "-listen tcp" debe agregarse a los parámetros de la línea de comandos. En mi caso, cambié el ícono "XWin Server" para leer:

C:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd; /usr/bin/startxwin -- -multiwindow -listen tcp"

Esto funciona muy bien para mí, gracias! Pero, ¿cómo puedo evitar tener que hacer xhost +localhost(o una solución más segura) en un terminal cygwin local cada vez que inicio el servidor X?
chappjc

1
Bueno, he añadido xhost +localhosten startxwinla derecha cerca del final del archivo, dentro de la última condicional:xhost +localhost fi exit $retval
chappjc

¿qué pasa con la masilla?
Brian Thomas

@BrianThomas ¿Puedes aclarar tu pregunta? ¿Qué hay de PuTTY? La configuración PuTTY en mi publicación original era válida. El problema fue con CygwinX.
SeeJayEmm

Bueno, me refería al título, Putty no se conecta, la respuesta es para Cygwin, y no para masilla, pero veo una pantalla de masilla en el OP. De todos modos, lo descubrí. Para la masilla, la solución a mi problema fue asegurarme de que solo se ejecutara un Xserver (XMing en mi caso), y que no había errores en el registro al inicio, y que es obligatorio especificar que la pantalla :10funcionó para mí. (ok, puedo ver cómo esto no corresponde a su respuesta, ya que su OP original, sin embargo, también hay otras personas aquí, este problema puede ser bastante amplio. Espero que esto sea útil para otros.)
Brian Thomas,

0

Tuve este problema Fue porque X-Win no estaba funcionando. Si desea que X-Win se ejecute al inicio, vaya a "ejecutar", luego "shell: startup" y copie el acceso directo x-win en esa carpeta.


0

En mi caso, el error fue similar "conexión de masilla x11 rechazada". Estaba iniciando sesión a través de una máquina Windows en un servidor Ubuntu 16 a través de masilla (con el reenvío x11 habilitado).

Intenté muchas cosas, desde volver a generar archivos .Xauthority hasta agregar cookies mágicas al usar la lista xauth. Sin embargo, el problema era simplemente que el servidor Xming no se estaba ejecutando en mi máquina Windows. Una vez que comencé Xming en la máquina host (windows) en la que estaba generando la masilla, el inicio de sesión a través de Putty funcionó de maravilla.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.