HMC Homepage      CS Home

Remote X Connections

Intro

One of the good things about running X-Windows on the CS cluster is that we have the ability to serve applications to remote displays that understand X-Windows protocols. To accomodate students who wish to have a graphical interface without coming to the terminal room, this document provides instructions as to how to make a secure connection via SSH and how to tunnel the X connection over that secured channel. A remote X connection will allow you to have your favorite program in a window on your computer wherever you are, while the program is running on turing.

X Server-Client Relationship

The X Server is the display. It captures all input, receives requests from the X-Client, and reports events to the X Client. The X Client makes requests to the X Server to display information it is computing. If connected remotely, the X Server is the application that will be running on the local computer (X or an X Emulator), and the X clients run on the remote computer.

Getting X (or an X Emulator)

The best place to start is the X Org resource page .

If you are running Windows, the free-est solution is Cygwin/XFree86 . Cygwin is a Unix environment ported for use on Windows machines. Among other applications, Cygwin supports a version of XFree86 which can be used to connect remotely to turing. A very useful installation stepthrough is provided.
NOTE: The openssh and inetutils packages can be found in the Net category.

Once you have cygwin/xfree86 installed: If you want to jump right in with the pre-configured settings just start cygwin and at the command prompt type

sh /usr/X11R6/bin/startxwin.sh

to start the X Emulator. To customize cygwin/Xfree86 see the User's Guide.

X11 for Mac OS X

First of all make sure you are running Mac OS X v10.3 "Panther" or better. Assuming you don't already have X11 installed [it is part of a custom install of the OS] download it here. . Now, follow the instructions of the installation. Once you have installed X11, you can launch the X11 application from /Applications/X11. To forward a remote display to your computer use
ssh -X username@remote_hostname (such as ssh -X jmason@turing.cs.hmc.edu).

Using X Remotely

In general, connecting remotely to turing (or some other computer) can be done by forwarding a remote session through an ssh tunnel, which encrypts the data and makes it secure.

  • For Unix-based users, your ssh connection should automatically set up X forwarding. If it doesn't, try enabling X forwarding by using the -X option.
  • For cygwin/xfree86 users, at the command promp of XFree86 type

    ssh -X username@remote_hostname (Such as ssh -X jmason@turing.cs.hmc.edu).

Once connected you can run any program from the command line. (Running it with an ampersand, as in emacs& will let you continue to use the shell)

Troubleshooting

Make sure that you use a capital X, as the lowercase -x option actually disables X forwarding.

See the CS QREF on ssh tunneling for display issues.


Copyright (c) HMC Computer Science Department. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License.''

HMC Computer Science Department
Contact Information
Last Modified Friday, 18-Jun-2004 13:50:59 PDT