X11 Forwarding Problem

I have 2 Debian boxes.

In my ssh.com client and my putty client, I have X11 fowarding turned
on for both boxes.

When I connect one, I can xterm with no problem back to my pc.
On the other, I keep getting:
xterm Xt error: Can't open display:
xterm: DISPLAY is not set

On both machines in the sshd_config I have:
X11Forwarding yes

I just don't understand what I'm doing wrong. Thanks.

You have two Debian boxes. Are they the machines you are connecting to? I am assuming so since you mention Putty (which as far as I know is Windows only although it can run under WINE). What kind of machines are you making the connection from? If you are connecting with Putty under Windows, are you running an Xserver on the Windows box? What you wrote leads me to assume this:

Windows Box 1 (Running Putty) ----------> Debian Box 1

Windows Box 1 (Running Putty) ----------> Debian Box 2

Windows Box 1 (Running SSH.Com) ------> Debian Box 1

Windows Box 1 (Running SSH.Com) ------> Debian Box 2

Is that correct?

I'm sorry about not including more info.

You're assumptions were correct.

I ssh to the debian box with X11 forwarding turned on. On 1 debian
box, xterm (runing xwin/cygwin), it spawns a xterm session on my windoze
box.

I ssh to the 2nd debian box, and it gives the error above.

I've compared both sshd_config's on the debian's boxes together and they are exact. I've tried to set my display, not set my display,etc...

Hmmm... I'm not sure how you can check this with PuTTY, but it sounds like you might be running Cygwin on your Windows box, so... do you have the Cygwin OpenSSH client installed? If so, try this:

ssh -X debian.box.2

Log in as usual, etc... That should give you an ssh connection with X forwarding enabled (That's the -X). Then try to launch an X app and see if it comes through. If it does, try this at a shell prompt

~#

The '~' is the escape character for OpenSSH and the '#' asks the OpenSSH client to display all forwarded connections in use. You should see something like this:

$ ~#
The following connections are open:
  #0 client-session (t4 r0 i0/0 o0/0 fd 4/5)
  #1 x11 (t4 r2 i0/0 o0/0 fd 7/7)

The important part of this is the #1 line. It indicates that X11 forwarding is currently active. It will only display if your X app launches. If your X app doesn't launch, you'll only see the #0 line.

You could also try running your ssh server with the -ddd option in order to take a look at debugging output. What you should do is:

  1. Connect to debian box 2 and stop OpenSSH services
  2. Manually run sshd as follows:

sshd -ddd

  1. You should see a bunch of stuff scroll past you. Attempt to make your connection with whatever SSH client you want to use with X forwarding enabled. Then attempt to launch an X application. The terminal you started sshd in should give you a lot of information which you can post here.

Once you disconnect, the sshd process will die. When it's in debug mode it only allows one connection and then dies, so this is normal. Once you've got a good debug log, just restart your ssh services as normal.

This is assuming you have root access on debian box 2 BTW...