The host name and your other settings are saved in the profile. Just write the name of your new profile in the Saved Sessions box and click Save to create a new profile. This section allows you to save your settings as named profiles. SSH is a secure, encrypted communications protocol designed to ensure your password and data are maximally protected. The Connection type selection seldom needs to be touched. If for some reason you need to connect to a different port number, just change the value. For SSH, this is the port on which the SSH server runs. remote_session.The port field specifies the TCP/IP port to connect. Run the script by typing at the terminal.
If it is all successful, you should have a new window appear with a full desktop session appearing in it. Finally, the last command, ssh will connect remotely to your server and run lxsession, the lxde session manager. This will only apply to programs run from your current terminal. Then export will tell all your graphical programs to use Xnest, rather than your original X11 server. The first line calls Xnest, starting a new X11 server, fully windowed with the dimensions 1500×900, you will need to adjust this to your preferred resolution. The bash script is very simple and is in three parts. Once insalled, create a new script called remote_session.sh, make it executable and edit it: touch remote_session.sh chmod +x remote_session.sh vi remote_session.shĪdd the following, modified to suit your personal circumstances: #!/bin/bash There is a lot written about it, so again, google is your friend if you want more information. Xnest is both an X11 server and X11 client.
On your Linux/Ubuntu/Mint Desktop, open a terminal and install xnest: sudo apt install xnest If you experience trouble at this point, it is worth connecting with ssh using the -vv -X flags to see the error messages. Be aware that it will take over your terminal unless you push it to the background with ampersand (&), for instance: gparted & if you log into your remote server and run a graphical program (assuming it is installed) the program will magically appear in front of you. sudo service ssh restart exit Lets start with the easier option first: Linux: Running a single program remotely:Īt this point your remote server is already configured to allow ssh +X11 forwarding.
There are alternatives through, and I do suggest you look into them if you’re interested.įinally, restart ssh, log out and log back into your server to make sure everything is working. Generally, I prefer using Linux Mint with Cinnamon, but LXDE provides a nice environment that does not use a lot of network bandwidth. Next, install lxde – a lightweight desktop environment: sudo apt install lxde lxdesession If you use IPv6, then this tutorial is not for you! WARNING: Setting AddressFamily to inet will force ssh to only use ipv4 addresses. I’m assuming that port 22 is open on your remote server and you are capable of logging into the server with ssh.Įdit the file /etc/ssh/sshd_config (with sudo if necessary) sudo vi /etc/ssh/sshd_configĪnd ensure that X11Forwarding yes is set and set AddressFamily inet: X11Forwarding yes Before we begin, configure the remote server:
I will show you how to tunnel and entire desktop session or an individual program. In this tutorial I’ll show you how to tunnel X11 through ssh to both a computer running Windows with Putty and VcXsrv and a Linux computer with Xnest. Setting up a remote session too, I’ve found, resolves some quirky display issues when using a proprietary program with a GUI remotely.
I’ve found it useful when developing Linux code from a Windows desktop, and want to run a full development environment remotely. This can be handy if you’re developing a desktop system on a remote server or virtual machine and want to experience the system the same way as the end user. Sometimes you may even want to use a full graphical desktop remotely (audible gasps!). And I dare say, sometimes it’s better to use a graphical tool to do something than it is to use the CLI alternative- parted/gparted: I’m looking at you! As useful as ssh and command-line (CLI) tools are when using a Linux/Ubuntu system remotely, sometimes it simply isn’t enough.