Connecting with SSH - ARC-Lab-UF/docs GitHub Wiki

For basic command-line tasks, the easiest way to run connect to our servers is using Secure Shell (SSH). This will give you a remote terminal that allows you to run command-line programs that don't have require a GUI, e.g., git. Most modern operating systems (Windows 11, macOS, Linux) ship with an SSH client pre-installed.

Network Requirement

To connect to the servers, you MUST be connected to the UF network. You can either be on campus connected to UF's Wi-Fi network or elsewhere connected using UF's VPN.

SSH Login

To login to a server, we will use the ssh command. You can run this from a terminal emulator on your laptop/PC. Here are some decent terminal emulators for each common operating system:

  • Windows: Terminal.
  • macOS: Terminal (installed by default)
  • Linux: Use the default Terminal emulator that comes with your Linux distribution.

To start an interactive SSH session on one of our servers, try running the following command in your terminal emulator of choice:

ssh username@server

Replace username with your GatorLink username, and server with the hostname of the server you want to connect to. At the time of writing, there are a handful of servers that can be accessed by students:

  • ece-b312-shrec3.hcs.ufl.edu
  • ece-b312-shrec4.hcs.ufl.edu
  • ece-b312-treb00.hcs.ufl.edu
  • ece-b312-treb01.hcs.ufl.edu

For example, the following command would start an SSH session for the foo user on the treb00 server: ssh [email protected]

After running the ssh command above, if everything is configured properly, you should be prompted to enter your password. This should be your GatorLink login password. If your password is not working, make sure your username is correct, and that your advising student or Dr. Stitt has indeed requested an account be created for you.

SSH Configuration File

SSH provides the ability to create a config file on your local computer stored at ~/.ssh/config, where ~ is an alias for you user/home directory. This file is not mandatory, but it will greatly reduce the amount of typing you need to do to login to the servers.

In short, for example, it means you can type ssh treb00 instead of [email protected] every time you login.

If it doesn't already exist, create it using the text editor of your choice, and add the following contents, replacing <username> with your GatorLink username.

Host treb00 treb01 shrec3 shrec4
    User <username>
    HostName ece-b312-%h.hcs.ufl.edu
    IdentityFile ~/.ssh/id_ed25519

This config file basically allows you to set SSH options based on which "host" you specify on the command line. So when we type ssh treb00, it will apply all of these options automatically. The IdentityFile option is unnecessary if you only have one SSH key pair, as SSH will use one by default if it is in your ~/.ssh directory. The %h in the HostName option gets replaced with the specified Host.

Next Steps

Once you have verified that you can authenticate and login to the servers with SSH, you can proceed.

If you are annoyed by having to type your password every time you login to a server, see SSH Key Authentication.

If you don't mind typing in your password every time you login, then skip straight to Graphical User Interfaces.

⚠️ **GitHub.com Fallback** ⚠️