Linux – PuTTY, CygwinX, and X11 forwarding connection refused

cygwin;linuxputtyx11

I am no longer able to forward X11 using KiTTY/PuTTY to CygwinX.

I am connecting to an Ubuntu Server 14.10 machine that is correctly configured to allow X11 forwarding. I am able to initiate X11 forwarding using Cygwin xterm and from other linux machines.

I am using CygwinX [1.7.34(0.285/5/3)] and KiTTY 0.64.0.1 (PuTTY fork, I have also tried PuTTY), on Win7.

I have verified my display variable and have tried disabling xhost access control in Cygwin xterm.

$ echo $DISPLAY
:1

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

My KiTTY/PuTTY is configured to enable X11 forwarding and the correct display is set. I've tried :1 and :1.0.

KiTTY X11 Config Screenshot

When I SSH to the server my DISPLAY variable is set and xauth is updated. I have deleted my .Xauthority and recreated it to verify.

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

When I attempt to launch an X11 application I get the following 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 is listening on port 34576 if that matters.

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

I believe there is a software or configuration issue I am missing as I am seeing this with multiple server and client machines. Any help would be appreciated.

Best Answer

Ok, I figured out the solution to my own problem.

By default CygwinX no longer listens for tcp connections (Cyg SSH is using Unix sockets to connect). To enable tcp connections "-listen tcp" needs to be added to the command line parameters. In my case I changed the "XWin Server" icon to read:

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