Setup SSH¶
Overview¶
JSC provides SSH access to supercomputers (JURECA, JUWELS, JUSUF). This document describes how to set up SSH access to the JSC systems. The setup on all the machines is the same.
The following provides a condensed version of the full SSH login documentation, which you may consult for further details. It also contains a section on troubleshooting.
OpenSSH Key Generation¶
SSH, or Secure Shell, is a way to access another computer from afar securely. Imagine you are using your home computer but want to do something on a different computer in a different location, like training an AI model. SSH makes this possible while keeping the connection safe and private.
To generate an SSH key, open a terminal on Linux or WSL on Windows and type:
The options specify the type of the key (-t), the number of key derivation function rounds (-a), and the location to place the key (-f), which is selected to be the default. Optionally, one can give a comment to the key with -C to help distinguish multiple keys.
Uploading and Managing SSH Keys on Juelich HPC Systems¶
To manage your SSH keys and access Juelich HPC systems effectively, proceed as follow:
-
Create a user account on JuDoor:
-
Join a project or create one:
- After creating your account, you need to join a project to get compute time or create one. For more information, refer to this guide.
-
Sign the usage agreements:
- After joining a project, sign the usage agreements as shown in this video.
-
Manage your SSH keys:
-
Add IP range and key to JuDoor: JSC restricts from where you can log in, so you need to:
-
Determine your IP range: Use whatismyip or the SSH-keys management interface to find your IP range.
I will use as an example the IP 93.199.55.163 (YOUR IP IS DIFFERENT). -
Replace the second half with
"0.0/16":- It was
93.199.55.163-> It becomes93.199.0.0/16 - Add this new IP to the
from=clause so it looks like this nowfrom="93.199.0.0/16"
- It was
-
Add a second magic number, with a comma:
,10.0.0.0/8🧙♀️.- This is required since this is used in the VSCode guide
-
If you are from FZJ, also add
,134.94.0.0/16.- The final
from=clause looks something like thisfrom="93.199.0.0/16,10.0.0.0/8,134.94.0.0/16"
- The final
-
Copy your ssh key that is in
~/.ssh/id_ed25519.pub- The ssh key looks something like this:
ssh-ed25519 AAAAC3NzaC1lZDE1NTA4AAAAIHaoOJF3gqXd7CV6wncoob0DL2OJNfvjgnHLKEniHV6F user@demonstration.fz-juelich.de(YOUR KEY IS DIFFERENT)
- The ssh key looks something like this:
-
Paste your SSH key after the from clause(with a space in-between) to get:
from="93.199.0.0/16,10.0.0.0/8,134.94.0.0/16” ssh-ed25519 AAAAC3NzaC1lZDE1NTA4AAAAIHaoOJF3gqXd7CV6wncoob0DL2OJNfvjgnHLKEniHV6F user@demonstration.fz-juelich.de
-
Click on "Start upload of SSH-Keys" to save your key.
-
-
Documentation and Support:
- For detailed instructions and additional information, refer to the JSC SSH Key Handling Documentation.
Log in to a Machine¶
After completing the steps outlined in the previous section, you are ready to log in to the Juelich HPC systems. Below are examples for accessing two of the systems, JUWELS Booster and JURECA, using SSH.
- Logging into JUWELS Booster
To log in to the JUWELS Booster system, open your terminal and use the following SSH command. Ensure you replace <yourid> with your actual JuDoor user name.
- Logging into JURECA
For accessing JURECA, you have two options depending on your network setup. Use the appropriate command by replacing <yourid> with your JuDoor user name.
Standard Access:
IPv4 Access: If you need to explicitly use IPv4, use the following command:
OpenSSH Persistent Configuration¶
To simplify your SSH connections, follow these steps to configure persistent SSH settings for systems like JUWELS Booster:
-
Create the SSH configuration file
~/.ssh/configif it doesn't exist: -
Add configuration for JUWELS Booster: edit
~/.ssh/configto include:ReplaceHost juwels_booster User [USERNAME] HostName juwels-booster.fz-juelich.de ServerAliveInterval 60 IdentityFile ~/.ssh/id_ed25519 MACs hmac-sha2-512-etm@openssh.com[USERNAME]with your JuDoor user name. -
Connect using your configuration:
Dealing with MFA
Since November 2025, JSC systems require Multi-Factor Authentication (MFA) for SSH logins. You can set ControlMaster to persist your session and avoid repeated MFA prompts:
Host juwels_booster
User [USERNAME]
[OTHER SETTINGS ...]
ControlPath ~/.ssh/control-%h-%p-%r
ControlMaster auto
ControlPersist 4h
scp or rsync or other tools to get data from remote machine make sure you use the correct login node Troubleshooting¶
Please visit the full SSH login documentation's section on troubleshooting, which also contains support contact information.
