SSH-Jumphost

Service: CIT operates a central SSH jumphost cluster. This offers the possibility to access University-internal systems via SSH from outside the university. Both IPv4 and IPv6 connections can be used.

Target Group: students, employees

Usage Costs: free of charge

Contact: Hotline

  • Manuals

    1. Preparation

    An SSH key pair must be generated to use the service. Requirements for the key are: Key type RSA with key length at least 3072 (better 4096) or key type Ed25519 or key type ECDSA with key length at least 256 (better 384 or 521). Not all types are supported by all software and hardware. We recommend ECDSA 384, alternatively RSA 4096.

    Open the terminal and enter the following command to create the key pair with the recommended settings.
    ssh-keygen -t ecdsa -b 384
    or
    ssh-keygen -t rsa -b 4096

    Confirm this with Enter. Then, to protect your private key, please be sure to choose a good password (not your Uni or network access password).

    © Uni MS IT

    2. Locate stored keys

    The generated file is located in the hidden /.ssh folder in your user folder.  Depending on the key type, the files are called 4096id_ecdsa or id_rsa or id_ed25519 If necessary, enable the display of hidden folders and files to make the folder visible.

    2. Locate stored keys
    © Uni MS IT

    3. Upload the key

    The public part of the key just generated (the generated .pub file) must now be uploaded to the IT portal https://sso.uni-muenster.de/IT-Portal/# To do this, navigate to "Passwords and PINs" / "SSH Public Keys" and click Browse and select the .pub file. If you have enabled two-factor authentication, you will also need to enter the 6-digit code number that was just sent to you via SMS. Now press the button to deposit the public key.

    3. Upload the key
    © Uni MS IT

    4.1 Check SSH status on the target system (administrators only)

    Check if the SSH service is currently running on your device. To do this, enter the following command:

    sudo systemctl status ssh
    (Debian/Ubuntu) oder (CentOS/RHEL/Fedora)
    sudo systemctl status sshd

    The terminal should return Active, otherwise start the service with

    sudo systemctl start ssh.service
    (Debian/Ubuntu) oder (CentOS/RHEL/Fedora)
    sudo systemctl start sshd.service

    and check the status of the service again with the first command.

    4.1 Check SSH status on the target system (administrators only)
    © Uni MS IT

    4.2 Enabling the SSH jump hosts in the firewall of the target system (administrators only)

    For the system that is to be reached via SSH, the following two addresses of the SSH jump hosts must be entered by means of an exception rule in the firewall of the target system for TCP port 22 (default port for SSH) and released in the network ACLs.
     

    • sshjump1.uni-muenster.de (128.176.11.120, 2001:4cf0:2:4020:250:56ff:feae:3904)
    • sshjump2.uni-muenster.de (128.176.11.121, 2001:4cf0:2:4020:250:56ff:feae:174b)

    4.2 Enabling the SSH jump hosts in the firewall of the target system (administrators only)
    © Uni MS IT

    5.1 Use SSH

    You can reach the target system either via load balancer or explicitly with the two addresses mentioned above. To do this, enter the following command and replace the wildcards

    • - account for which the public part of the key has been uploaded to the IT portal.
    • - account for which the public part of the key is stored in the authorized_keys file on the .
    ssh -J account1@sshjump.uni-muenster.de
    account2@zielsystem

    5.1 Use SSH
    © Uni MS IT

    5.2 Advanced use of SSH

    Many SSH implementations test all existing identity files, so that different keys can be used on the jumphost and the target system. However, the IP protocols and identity can also be specified explicitly.
    For the explicit identity, use the "-o IdentitiesOnly=yes" option and specify the associated file with "-i". You specify the protocol with "-4" for IPv4 or "-6" for IPv6.

    ssh [-o IdentitiesOnly=yes][-i identityFile]
    [-4|-6] -J account1@sshjump.uni-muenster.de
    [-4|-6] account2@zielsystem

    6. Use data transfer

    Newer SSH versions:
    scp -J account1@sshjump.uni-muenster.de
    datei account2@zielsystem:datei

    sftp -J account1@sshjump.uni-muenster.de
    account2@zielsystem


    Older SSH versions:
    scp -o ProxyJump=account1@sshjump.uni-muenster.de
    datei account2@zielsystem:datei

    sftp -o ProxyJump=account1@sshjump.uni-muenster.de
    account2@zielsystem