Letting Ubuntu bash on Windows 10 run ssh -X
to get a GUI environment on a remote server
Install all of the following. On Windows, install an X server, e.g.Xming
. On Ubuntu bash, use sudo apt install
to install ssh xauth xorg
.
sudo apt install ssh xauth xorg
Go to the folder contains ssh_config
file, mine is /etc/ssh
.
Edit ssh_config
as administrator(USE sudo
). Inside ssh_config
, remove the hash #
in the lines ForwardAgent
, ForwardX11
, ForwardX11Trusted
, and set the corresponding arguments to yes
.
# /etc/ssh/ssh_config
Host *
ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes
In ssh_config
file, remove the front hash #
before Port 22
and Protocol 2
, and also append a new line at the end of the file to state the xauth file location, XauthLocation /usr/bin/xauth
, remember write your own path of xauth file.
# /etc/ssh/ssh_config
# IdentifyFile ...
Port 22
Protocol 2
# Cipher 3des
# ...
# ...
...
...
GSSAPIDelegateCredentials no
XauthLocation /usr/bin/xauth
Now, since we are done editing the ssh_config
file, save it when we leave the editor. Now go to folder ~
or $HOME
, append export DISPLAY=localhost:0
to your .bashrc
file and save it.
# ~/.bashrc
...
...
export DISPLAY=localhost:0
We are almost done. Restart your bash shell, open your Xming
program and use ssh -X yourusername@yourhost
. Then enjoy the GUI environment.
ssh -X yourusername@yourhost
The problem is also in Ubuntu subsystem on Windows, and the link is at
https://gist.github.com/DestinyOne/f236f71b9cdecd349507dfe90ebae776
ForwardAgent
rather thanForwardAgend
. – Revolute