Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Tabs Container
directionhorizontal
Tabs Page
titleLatest - jump-17.ecmwf.int

Multimedia
namelinux-jump-17-setup.mp4

Tabs Page
titleLegacy - jump.ecmwf.int

Multimedia
namelinux_teleport_setup.mp4

Installing the the tsh client

Multiexcerpt
MultiExcerptNametsh_linux_install

The tsh application is required to perform user authentication. tsh is open source, very portable, and has minimal dependencies.

Here are the installation instructions, extracted from the official Teleport documentation:

  • In your terminal, assign environment variables that you will use to download your intended archive.
    Tabs Container
    directionhorizontal
    Tabs Page
    titleLatest - jump-17.ecmwf.int
    HTML
    <div class="preformatted panel conf-macro output-block" style="border-width: 1px;" data-hasbody="true" data-macro-name="noformat">
    <div class="preformattedContent panelContent">
    <pre data-bidi-marker="true" class="teleport17-version">TELEPORT_PKG=teleport
    TELEPORT_VERSION=17.0.0
    SYSTEM_ARCH=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')</pre>
    </div>
    </div>
    Tabs Page
    titleLegacy - jump.ecmwf.int
    HTML
    <div class="preformatted panel conf-macro output-block" style="border-width: 1px;" data-hasbody="true" data-macro-name="noformat">
    <div class="preformattedContent panelContent">
    <pre data-bidi-marker="true" class="teleport13-version">TELEPORT_PKG=teleport
    TELEPORT_VERSION=13.0.0
    SYSTEM_ARCH=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')</pre>
    </div>
    </div>
  • Run the following commands to download the Teleport archive, unpack it, and install binaries:
    No Format
    curl https://cdn.teleport.dev/${TELEPORT_PKG?}-v${TELEPORT_VERSION?}-linux-${SYSTEM_ARCH?}-bin.tar.gz.sha256
    # <checksum> <filename>
    curl -O https://cdn.teleport.dev/${TELEPORT_PKG?}-v${TELEPORT_VERSION?}-linux-${SYSTEM_ARCH?}-bin.tar.gz
    shasum -a 256 ${TELEPORT_PKG?}-v${TELEPORT_VERSION?}-linux-${SYSTEM_ARCH?}-bin.tar.gz
    # Verify that the checksums match
    tar -xvf ${TELEPORT_PKG?}-v${TELEPORT_VERSION?}-linux-${SYSTEM_ARCH?}-bin.tar.gz
    cd ${TELEPORT_PKG?}
    sudo ./install
Tip
titleNo sudo or administrator privileges?

Just skip the last step and place the tsh executable somewhere in your PATH

...

Multiexcerpt
MultiExcerptNamessh_config
Tabs Container
directionhorizontal
Tabs Page
titleLatest - jump-17.ecmwf.int
Note
titleUpdating from a previous jump service

If you have some configuration for a previous jump service at ECMWF, make sure you remove it (or move it aside) and replace it by the new one to avoid conflicts. 

Code Block
languagetext
titleSSH config snippet
Host *.jump-17.ecmwf.int jump-17.ecmwf.int* a?-* a??-* hpc-login* ecs-login* hpc2020-* lfc?-* ecf?-* ecflow-* ecinteractive*
    User ecmwfusername
    UserKnownHostsFile ~/.tsh/known_hosts
    IdentityFile ~/.tsh/keys/jump-17.ecmwf.int/user.address@somewhere.com
    CertificateFile ~/.tsh/keys/jump-17.ecmwf.int/user.address@somewhere.com-ssh/jump-17.ecmwf.int-cert.pub 
    ServerAliveInterval 60
    TCPKeepAlive yes 

Host !jump-17.ecmwf.int *.jump-17.ecmwf.int
    ProxyCommand tsh proxy ssh --cluster=jump-17.ecmwf.int --proxy=jump-17.ecmwf.int:443 %r@%h

Host hpc-login ecs-login
    Hostname %h.jump-17.ecmwf.int
    ProxyCommand tsh proxy ssh --cluster=jump-17.ecmwf.int --proxy=jump-17.ecmwf.int:443 %r@%h

# Extra configuration for additional internal hosts through the main entry point
Host a?-* a??-* hpc-* hpc2020-* lfc?-* ecf?-* ecflow-* ecinteractive* !hpc-login* !ecs-login* !*.jump-17.ecmwf.int*
    ProxyJump hpc-login.jump-17.ecmwf.int
    # Replace by ecs-login.jump-17.ecmwf.int if only ECS access
Tabs Page
titleLegacy - jump.ecmwf.int
Code Block
languagetext
titleSSH config snippet
Host jump.ecmwf.int a?-* a??-* hpc-* hpc2020-* ecs-* ecinteractive*
  User ecmwfusername 
  IdentityFile ~/.tsh/keys/jump.ecmwf.int/user.address@somewhere.com
  CertificateFile ~/.tsh/keys/jump.ecmwf.int/user.address@somewhere.com-ssh/jump.ecmwf.int-cert.pub
  HostKeyAlgorithms +ssh-rsa*,rsa-sha2-512
  PubkeyAcceptedKeyTypes +ssh-rsa*
  ServerAliveInterval 60
  TCPKeepAlive yes

Host a?-* a??-* hpc-* hpc2020-* ecs-* ecinteractive*
  ProxyJump jump.ecmwf.int

Tip
titleNot sure about username and email?

You can find the right values for those two parameters in the output of the tsh login command

...