Skip to content

Documentation missing for SSH key / encryption feature #134

@ArneTR

Description

@ArneTR

This was quite hard to set up and we should document it. @ribalba please add what you think is important.

here my journey:

Make GMT cluster accept SSH keys from a user via the Dashboard

  • an RSA PEM-Format public key must be configured in the encryption_public_key_file directive in config.yml
    • Note that this key must NOT be OpenSSH Format
    • It is recommended to place the key in ./.rsa/pub.key and make the file readable 755
    • 755 is needed as the gunicorn container runs as root and 400 would thus make it unreadable in the container
    • Placing this keys is a security concern only if server/cluster and runner are the same machine and publically accessible. This is not a security threat GMT has any concern for at the moment as this mode is only encouraged in one person developer mode
  • The key can be created with
# Generate private key (2048-bit)
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048

# Extract public key
openssl rsa -pubout -in private_key.pem -out public_key.pem

Make Runner use SSH keys

  • an RSA PEM-Format private key must be configured in the encryption_private_key_file in the config.yml
    • Note that this key must NOT be OpenSSH Format
  • Via the Dashboard an OpenSSH Private Key block must be submitted under /settings.html
    • Note that this key must NOT be PEM Format

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions