Skip to main content

Contextualise motley-cue and pam-ssh-oidc on a VM Server

Project description

PyPI Badge Read the Docs Code style: black

contextualise-ssh-server

Contextualise motley-cue and pam-ssh-oidc on a VM Server

Installation

contextualise-ssh-server is available on PyPI. Install using pip:

pip install contextualise_ssh_server

Configuration

Config is read from /etc/contextualise_ssh_server.conf

There is a default config file in the place where pip installs this package

There you will also find templates for motley_cue.conf and feudal_adapter.conf

Environment Variables

These control the behaviour:

  • SSH_AUTHORISE_OTHERS_IN_MY_VO: If set to a nonempty value ALL members of ALL VOs of the user will be authorised to log in.

  • SSH_AUTHORISE_VOS: If the above variable is not set and this variable specifies a json list of VOs (actually AARC-G069/G027 Entitlements) to authorise.

    Example: export SSH_AUTHORISE_VOS="['urn:mace:egi.eu:group:cryoem.instruct-eric.eu:admins:role=owner#aai.egi.eu', 'urn:mace:egi.eu:group:umsa.cerit-sc.cz:admins:role=owner#aai.egi.eu']

Usage

The tools will output the two config files motley_cue.conf and feudal_adapter.conf in the folder in which it is called.

Those need to be placed in /etc/motley_cue with the access token of the user as the only parameter:

contextualise_ssh_server <OIDC_ACCESS_TOKEN>

PAM

For enabling and disabling tokens in pam, you can use the scripts enable-pam-ssh.sh and disable-pam-ssh.sh

They are installed into the same folder as the python file, which you can find with contextualise_ssh_server -b

VM Integration

Install packages to VM image:

yum install motley-cue pam-ssh-oidc

Include this in the VM startup:

# enable tokens in pam:
`contextualise_ssh_server -b`/enable-pam-ssh.sh

# create motley-cue config
cd /tmp
contextualise_ssh_server $USER_OIDC_ACCESS_TOKEN

# place them in /etc/motley_cue/ 
sudo cat motley_cue.conf     > /etc/motley_cue/motley_cue.conf
sudo cat feudal_adapter.conf > /etc/motley_cue/feudal_adapter.conf

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

contextualise_ssh_server-0.8.6.tar.gz (21.0 kB view details)

Uploaded Source

Built Distribution

contextualise_ssh_server-0.8.6-py2.py3-none-any.whl (21.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file contextualise_ssh_server-0.8.6.tar.gz.

File metadata

File hashes

Hashes for contextualise_ssh_server-0.8.6.tar.gz
Algorithm Hash digest
SHA256 d50f122bcb97b381cd76d810d50a74530452630a05fa14661424b65068d55981
MD5 7ee0384900e50c05f512f9e7d2c2724b
BLAKE2b-256 595f2ff37d086146a9d0d84649c7b9a578a9cf4a96c42a0e18226c4ec4c05169

See more details on using hashes here.

File details

Details for the file contextualise_ssh_server-0.8.6-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for contextualise_ssh_server-0.8.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f5c2e09ca362d3b74b23590a11aec9cd7b40ac0445d465bb0813ddc951a5a678
MD5 7bd4dbd800223aa3d1fdb2983aeb90e0
BLAKE2b-256 0b9a1ae279392d63057c1e3569beffb660f17589d20c3b5ad0891f5156753152

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page