X over SSH to Ubuntu server
Solution 1
It's right there in the last line:
debug1: Remote: No xauth program; cannot forward with spoofing.
In addition to gedit, you'll also need to install an xauth package. If the Ubuntu server wasn't installed with an X Windows system (probable considering you had to manually install Gedit) this is clearly not present.
Solution 2
Make sure you allow it in the sshd_config on your server.
X11Forwarding yes
Also, make sure that your client is configured. If you are using OSX, make sure X11 is running, otherwise check that your local ~/.Xauthority is chmod 600 and ssh_config on the client is well configured.
Host *
ForwardX11 yes
ForwardAgent no
Check to see if you have xorg-x11-xauth
installed on the client.
You can verify this by running the commands below:
$ ssh -X -l root <USERNAME>
# echo $DISPLAY
localhost:10.0
Adam Matan
Team leader, developer, and public speaker. I build end-to-end apps using modern cloud infrastructure, especially serverless tools. My current position is R&D Manager at Corvid by Wix.com, a serverless platform for rapid web app generation. My CV and contact details are available on my Github README.
Updated on September 17, 2022Comments
-
Adam Matan over 1 year
I'm trying to run X remotely from an Ubuntu server. I've installed
gedit
on the remote machine, and tried:adam@laptop $ ssh -X adam@myserver adam@myserver $ gedit cannot open display: Run 'gedit --help' to see a full list of available command line options.
I've tried it with another program:
adam@myserver $ filezilla Error: Unable to initialize gtk, is DISPLAY set properly?
Here's the SSH log, using
ssh -X -v
:OpenSSH_5.3p1 Debian-3ubuntu5, OpenSSL 0.9.8k 25 Mar 2009 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug1: Connecting to [Server ip and name omitted, Adam] port 22. debug1: Connection established. debug1: identity file /home/adam/.ssh/identity type -1 debug1: identity file /home/adam/.ssh/id_rsa type 1 debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048 debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048 debug1: identity file /home/adam/.ssh/id_dsa type -1 debug1: Remote protocol version 2.0, remote software version OpenSSH_4.7p1 Debian-8ubuntu1.2 debug1: match: OpenSSH_4.7p1 Debian-8ubuntu1.2 pat OpenSSH_4* debug1: Enabling compatibility mode for protocol 2.0 debug1: Local version string SSH-2.0-OpenSSH_5.3p1 Debian-3ubuntu5 debug1: SSH2_MSG_KEXINIT sent debug1: SSH2_MSG_KEXINIT received debug1: kex: server->client aes128-ctr hmac-md5 none debug1: kex: client->server aes128-ctr hmac-md5 none debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP debug1: SSH2_MSG_KEX_DH_GEX_INIT sent debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY debug1: Host [Server ip and name omitted, Adam] is known and matches the RSA host key. debug1: Found key in /home/adam/.ssh/known_hosts:292 debug1: ssh_rsa_verify: signature correct debug1: SSH2_MSG_NEWKEYS sent debug1: expecting SSH2_MSG_NEWKEYS debug1: SSH2_MSG_NEWKEYS received debug1: SSH2_MSG_SERVICE_REQUEST sent debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password debug1: Next authentication method: publickey debug1: Offering public key: /home/adam/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 277 debug1: Authentication succeeded (publickey). debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: Requesting X11 forwarding with authentication spoofing. debug1: Sending environment. debug1: Sending env LANG = en_US.utf8 debug1: Remote: No xauth program; cannot forward with spoofing. Linux sftp-waze 2.6.24-10-xen #1 SMP Tue Sep 8 19:06:53 UTC 2009 i686
Unfortunately, these programs have no verbosity flag, so that is all the information I have.
What's wrong? Is it even possible to run remote X on ubuntu server?
-
APR about 13 yearstry adding the '-v' (for verbose) and give us the output :-).
-
Adam Matan about 13 yearsgedit has no verbosity flag. I've tried
filezilla
and got the same error (added to question). -
Deb about 13 yearsThe
-v
flag on the SSH connection command will give details about whether or not the X forward was successfully established. -
APR about 13 yearsOK, could you please run this, and also provide the results?
strings /usr/sbin/sshd|grep xauth
-
-
Adam Matan about 13 yearsInstalling
xauth
on the server side solved the problem. Thanks! -
Adam Matan about 13 years+1 Wasn't the problem, but it's good advice for other readers.
-
APR about 13 yearsYeah, I wasn't quick enough to edit :-)