Source repo: hpc-security | Branch:
master| Last synced: 2026-04-24 10:27:17.425 UTC
Connecting to your Expanse.sdsc.edu Account
Contents:
- Connecting to HPC Systems
- Obtain your Expanse account
- Install/Locate the Terminal App
- Install/Locate Secure Shell (SSH) App
- Terminal Connection Example
- Read the Expanse User Guide
if you have any difficulties completing these tasks, please contact Institute staff at consult@sdsc.edu.
Connecting to HPC Systems
To connect to an SDSC HPC system, you need the following:
- An expanse account.
- A terminal client running on your laptop that can be used to connect to Expanse.
- The SSH application running in the terminal to make the connection.

Terminal applications are used to connect clients (you and your laptop) to remote computers (such as Expanse). See https://en.wikipedia.org/wiki/Terminal_emulator for more information. The best known example of using a terminal is for logging in/connecting to a remote computer systems by users. This is called a client-server connection. Terminals are interactive: you type in a command to run, and the outputs are displayed on the terminal. Executing any command is done by typing it and pressing Enter.
SSH provides a secure channel over any network in a client-server architecture (see https://en.wikipedia.org/wiki/Secure_Shell). You will be using your laptop to access SDSC’s HPC systems using the secure shell command ssh. It is essential that you be able to run secure shell (or a similar connection tool) with X11 forwarding enabled, which allows you to have data encryption and to launch windows applications (e.g. plotting, or a browser). There are multiple ways to connect via SSH, see here for more information.
This tutorial can be used to verify that your account is working, that your laptop is properly configured, and that your Expanse user environment is correctly setup. If you are new to Unix, please see the Basic Linux Skills tutorial.
Obtain your Expanse account
To obtain a trial Expanse account see the Expanse user guide at http://www.sdsc.edu/support/user_guides/expanse.html#trial_accounts
You will be directed to the XSEDE portal, where you will create a Portal User account. Information from that account will be used to set up your trial Expanse account. Note that the Portal account name and the Expanse account name may be different, so keep track of them both. The Expanse account can then be used for all Expanse allocations.
Locate or Install the Terminal App
*NOTE: The hostname for Expanse is expanse.sdsc.edu

Linux
There are a lot of terminal emulators available for Linux. See http://www.linuxandubuntu.com/home/10-best-linux-terminals-for-ubuntu-and-fedora for a 'Top 10' List. A very popular terminal is the Gnome terminal, which is included in the Linux distribution software.
(Image Source from http://www.necopost.com/2011/11/gnome-terminal-as-lightweight-desktop.html)
Mac
For Mac users, the Terminal application is typically used for connections. The application can be found in the /Applications/Utilities folder:

The terminal launches on the Mac Desktop like other applications, and uses an interactive command-line based interface:

Note that for macs, if you want to run applications on the remote that involves visualization or user GUIs such as Jupyter Notebooks, R-Studio, or Matlab, you will need to install XQuartz which launches an X11-type app. For more info, see
MSFT Windows
All windows users will need to run a terminal emulation application capable of supporting an X Server and an ssh-like client.
Windows 10
Windows 10 has a new terminal app called Windows Terminal, which is a terminal emulator for Windows 10 written by Microsoft. It includes support for the Command Prompt, PowerShell, WSL and SSH and other commands. While not a full Unix OS, it has shown to be very popular and useful within the HPC community. MSFT has created a GitHub repo with source code, installation and documentation here:

Windows (pre-Win10)
Older Windows users will need to run an X Server and an ssh-like client. Cygwin provides a comprehensive Linux-like environment and an X server (Cygwin/X). Putty will also work for direct access to Expanse, it is only used for file transfers. For download and installation instructions, see:
InstallLocate Secure Shell (SSH) App
For connecting to SDSC systems, we recommend using Secure Shell (SSH).
NOTE1: Using Null passphrase SSH public keys is not recommended for SDSC HPC systems; to automate your connections use the SSH-Agent command. For more information, see the SDSC Security Repo
NOTE2: See here for information on various methods for using SSH to securely connect to HPC systems.
Terminal Connection Example
Getting Domain Name & Host Information
Each machine you work with will have a domain_name, hostname or ip_address. You can learn about IP addresses and domain names here: https://computer.howstuffworks.com/dns.htm.
- NOTE: The DN (domain name) for Expanse is
expanse.sdsc.edu
You may need to know the physical IP address of the cluster. To do this, run the nslookup command from the command line of your local terminal window (or on expanse if are logged in)
[username@laptop:] nslookup expanse.sdsc.edu
(base) [mthomas@login02 ~]$ nslookup expanse.sdsc.edu
Server: 10.21.0.1
Address: 10.21.0.1#53
Non-authoritative answer:
Name: expanse.sdsc.edu
Address: 132.249.21.111
The public IP address appears under the line labeled "Non-authoritative answer:" and for Expanse there are two.
- Expanse's DN is. expanse.sdsc.edu
- Expanse's IP address is: 132.249.21.111
You can log onto Expanse using either the DN or the IP addresses.
Making the Connection
[localuser@localhost]: ssh -X username@expanse.sdsc.edu
Welcome to Bright release 9.0
Based on CentOS Linux 8
ID: #000002
--------------------------------------------------------------------------------
WELCOME TO
_______ __ ____ ___ _ _______ ______
/ ____/ |/ // __ \/ | / | / / ___// ____/
/ __/ | // /_/ / /| | / |/ /\__ \/ __/
/ /___ / |/ ____/ ___ |/ /| /___/ / /___
/_____//_/|_/_/ /_/ |_/_/ |_//____/_____/
--------------------------------------------------------------------------------
Use the following commands to adjust your environment:
'module avail' - show available modules
'module add `module`' - adds a module to your environment for this session
'module initadd `module`' - configure module to be loaded at every login
-------------------------------------------------------------------------------
Last login: Mon Nov 11 13:51:39 2020 from 12.34.56.78
[username@login02 ~]$
Read the Expanse User Guide
Please read the Expanse user guide and familiarize yourself with the hardware, file systems, batch job submission, compilers and modules. The guide can be found here: http://www.sdsc.edu/support/user_guides/expanse.html
Once you are logged onto Expanse, you can begin working with your code. For more help on using Expanse, see the Expanse 101 tutorial