Skip to main content

mc_ssh

SSH client wrapper for SSH with access token

Installation

  • Install mc_ssh from pypi: pip install mc_ssh
  • Install mc_ssh from source:
    • Install prerequisites: pip install -r requirements.txt
    • Build package: ./setup.py sdist
    • Install package: pip install dist/mc_ssh-$version.tar.gz

Usage

$ mccli --help

Usage: mccli [OPTIONS] COMMAND [ARGS]...

  ssh client wrapper with OIDC-based authentication

Options:
  --mc-endpoint URL               motley_cue API endpoint, default URLs:
                                  https://HOSTNAME, http://HOSTNAME:8080

  --insecure                      ignore verifying the SSL certificate for
                                  motley_cue endpoint, NOT RECOMMENDED

  Access Token sources: [mutually_exclusive]
                                  the sources for retrieving the access token,
                                  odered by priority

    --token TOKEN                 pass token directly, env variables are
                                  checked in given order  [env var:
                                  ACCESS_TOKEN, OIDC, OS_ACCESS_TOKEN,
                                  OIDC_ACCESS_TOKEN, WATTS_TOKEN,
                                  WATTSON_TOKEN]

    --oa-account SHORTNAME        name of configured account in oidc-agent
                                  [env var: OIDC_AGENT_ACCOUNT]

    --iss, --issuer URL           url of token issuer; configured account in
                                  oidc-agent for this issuer will be used
                                  [env var: OIDC_ISS, OIDC_ISSUER]

  --log-level LEVEL               Either CRITICAL, ERROR, WARNING, INFO or
                                  DEBUG.

  --version                       Show the version and exit.
  --help                          Show this message and exit.

Commands:
  info  get info about service
  scp   secure file copy
  sftp  secure file transfer
  ssh   remote login client

You can also use the help option on each subcommand, eg:

mccli ssh --help

First, you'll need an OIDC Access Token to authenticate. You might want to check out the oidc-agent for that.

After you get the oidc-agent running, configure an account for your OP. For example, if you generated an account named egi for the EGI AAI, you can set this in an environment variable:

export OIDC_AGENT_ACCOUNT=egi

Then, assuming that the ssh server has a motley_cue instance running on the same host at https://$SSH_SERVER or http://$SSH_SERVER:8080, you can connect to the ssh server simply by:

mccli ssh $SSH_SERVER

Or get the sshpass command that you can run instead:

mccli ssh $SSH_SERVER --dry-run

Download files

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

Source Distribution

mc_ssh-0.2.0.tar.gz (17.5 kB view details)

Uploaded Source

File details

Details for the file mc_ssh-0.2.0.tar.gz.

File metadata

  • Download URL: mc_ssh-0.2.0.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.5

File hashes

Hashes for mc_ssh-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b459329d73c62fc1a7da2e1306ea571fe1cd40a8b4bd0d948b19f935efc3da0b
MD5 90d9b11983ca2baef40d00edb4c568e9
BLAKE2b-256 271a1b00fd0994d6372442f34d235012f424552a54690120740d9934d7ffe31a

See more details on using hashes here.

Supported by

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