knowledge-base:general:remote-access:ssh

SSH Access

This page covers remotely accessing EECS Linux machines using SSH. SSH enables you to get a secure shell on a Linux machine. If you are running Linux with X Windows System (most distros are), MacOS with XQuartz installed, or a Windows application with X Forwarding (such as MobaXterm), you can also use X Forwarding to forward application windows to your computer.

As Windows does not have a great SSH client by default, you will want to either install Windows Subsystem for Linux (WSL) or use an application that supports SSH.

First, install WSL, MobaXterm, or PuTTY. If you choose to use WSL, the instructions are the same as for MacOS/Linux once you open it (except X11 forwarding will not work).

MobaXterm

  1. Install MobaXterm. The Home Edition will be sufficient to connect to EECS systems.
  2. Open MobaXterm.
  3. Select Sessions from the top ribbon and click “New Session”:
  4. Select the SSH tab.
  5. Enter the computer name in the Remote host field (e.g., comXXXX.eecs.utk.edu, hydraXX.eecs.utk.edu). Be sure to specify the entire host name including the eecs.utk.edu extension.
  6. Check the Specify username box and enter your Netid in the field:
  7. Click OK.

The SSH session should now open and prompt for a password. Log in with your Netid password, and you should get a shell prompt and a file browser on the left. The session should be automatically saved on the left side of the screen next time you open MobaXterm. MobaXterm automatically has X11 forwarding enabled, so you should be able to run GUI applications as well.

PuTTY

  1. Install PuTTY. Download the MSI installer (64-bit in most cases) and run it to get PuTTY installed.
  2. Open PuTTY.
  3. Enter the computer name (e.g., comXXXX.eecs.utk.edu, hydraXX.eecs.utk.edu) in the Host Name field
  4. If you wish to save the connection, enter the name you want to use in the field under Saved Sessions and click Save
  5. Click Open
  6. Click Yes if prompted about the host key not being cached
  7. Enter your netid and netid password when prompted.

If you use MobaXterm sessions, you automatically get a file transfer window when you login. If you use one of the other methods, you may want to get a separate file transfer client such as WinSCP.

  1. Install WinSCP. During install, it may offer to import PuTTY sessions if you have any saved.
  2. Open WinSCP.
  3. You should be prompted with a Login window.
  4. Make sure that File Protocol is set to SFTP.
  5. Enter the computer name in the Host name field (e.g., hydraXX.eecs.utk.edu where XX is 0-30, make sure to include .eecs.utk.edu).
  6. Enter your NetID and NetID password in the login fields.
  7. Click Login:

You should now have two file browsers to transfer files between computers.

As both Linux and MacOS have SSH by default, it should be pretty simple to use.

  1. Open a terminal
  2. Use SSH to connect
    ~> ssh netid@comXXXX.eecs.utk.edu
    # replace comXXXX with the computer you are connecting, such as your computer or a lab computer (e.g., hydra20, tesla22)
  3. If it prompts to confirm that you wish to connect, verify that you are accessing the right computer and enter Y
  1. If you are running MacOS, install XQuartz or another X Forwarding application.
  2. Open a terminal
  3. Construct a command line with X Forwarding
    ~> ssh -XY netid@comXXXX.eecs.utk.edu
    # -XY enable X forwarding
  4. Run a GUI program, and its window should be forwarded to your computer.

One of the easiest ways to transfer files over SSH is to use scp. It is usually much easier to run this command from the computer you are connecting from.

  1. Open a terminal
  2. Construct a command line to copy files
    # From your machine to the one you are connecting to
    ~> scp /path/to/file netid@comXXXX.eecs.utk.edu:/path/where/you/want/to/copy
    # From the other machine to your machine
    ~> scp netid@comXXXX.eecs.utk.edu:/path/to/file /path/to/save/on/your/computer

It is worth noting that, unless your computer is setup uniquely, your account on all EECS Linux machines should have the same filesystem. So you shouldn't ever have to copy files from hydra21.eecs.utk.edu to hydra0.eecs.utk.edu.