Skip to content

SSH Keys

Computing resources are accessible through a secure connection (SSH) to one of the login nodes. Logging in with an SSH client requires a private SSH key.

Important

Please note that SSH keys grant access only to the login nodes. You must create a project to run jobs and compile software (see Get Project).

Creating an SSH Key Pair in Linux/UNIX

SSH key authentication is the most secure and flexible way to connect to a remote server.

To generate a pair of ED25519 SSH keys, execute the following in your terminal:

ssh-keygen -t ed25519 -o -a 100

The following message, as shown in the example, will appear. Just press Enter (leave the line empty) to keep the default values. If you want to specify the directory and the desired name of the key, type the key name and directory path.

ssh-keygen command without file name specification

Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/username/.ssh/id_ed25519):

You will be asked to enter a passphrase twice. After the passphrase is created, your key pair will be saved to /home/username/.ssh/ under the name id_ed25519. The public part of the key pair has a .pub suffix and is the only one safe to distribute. Log in to the registration portal with your credentials and upload your public key file (.pub) to the SSH key section.

Ensure that the access rights of the generated keys are correct. In particular, the private key should be readable only by you (and the ~/.ssh directory should have permissions 700).

Supported algorithm

The ED25519 algorithm is currently the only supported public-key algorithm.

Access rights example

ls -l ~/.ssh/id_ed25519*
-rw------- guest users ~/.ssh/id_ed25519
-rw-r--r-- guest users ~/.ssh/id_ed25519.pub

Passphrase

To ensure the security of your SSH key pair on your client computer, we strongly encourage you to protect your SSH keys with a passphrase. Note, however, that while setting a passphrase is optional, it is purely private and has a priori nothing to do with your user portal credentials. A strong passphrase follows the same recommendations as a strong password.

Just like encryption keys, passphrases need to be kept safe and protected from unauthorised access. A password management application can help you to store all your passwords safely. There are many free and paid ones you can use, for example: * KeePassXC * PWSafe * Dashlane * 1Password * LastPass

Creating an SSH Key Pair in Windows 10/11

Putty 0.78+ incompatibility

The following procedure does not work with Putty version 0.78 and higher. If users wish to use the SSH key pair in Putty they are advised to create SSH key pair in Putty.

Windows 10 and newer have a built-in SSH client. You can use it from the command prompt or PowerShell. Since the Windows 10 April 2018 Update, the built-in SSH client is enabled by default. If you have an older version of Windows, you can install the OpenSSH client or third-party software (e.g. PuTTY, MobaXterm).

Click the Start icon, type cmd and press Enter. Then copy the following command into the command line and press Enter:

ssh-keygen -t ed25519 -o -a 100

The following message, as shown in the example, will appear. Just press Enter (leave the line empty) to keep the default values. If you want to specify the directory and the desired name of the key, type the key name and directory path.

ssh-keygen command without file name specification

Microsoft Windows [Version 10.0.19044.2846]
(c) Microsoft Corporation. All rights reserved.

C:\Users\username>ssh-keygen -t ed25519 -o -a 100
Generating public/private ed25519 key pair.
Enter file in which to save the key (C:\Users\username/.ssh/id_ed25519):

You will be asked to enter a passphrase twice. After the passphrase is created, your key pair will be saved to C:\Users\username/.ssh/ under the name id_ed25519. The public part of the key pair has a .pub suffix and is the only one safe to distribute. Log in to the registration portal with your credentials and upload your public key file (.pub) to the SSH key section.

Creating an SSH Key Pair in PuTTY (any Windows version)

The following procedure uses PuTTY, an open-source SSH client. You will also need PuTTYgen, which you can download from here.

  1. Start PuTTYgen.

  2. Select Ed25519 in the Key type dropdown.

  3. Click Generate and move your mouse in the grey box to generate randomness.

  4. Choose a strong password for the key and click Save private key.

  5. Copy the text from the grey box at the top of the PuTTY Key Generator.

  6. Save it as a separate file (e.g., id_ed25519.pub) to use as your public key.

  7. Upload your public key to the SSH key section.

Created by: Andrej Hurajt, Filip Holka, Marek Štekláč, Marek Štekláč