Skip to main content

Simply connect to your "EC2 Instance Connect"-capable AWS EC2 servers using one command

Project description

PyPi Version PyPi License PyPi Versions PyPi Wheel

sshaws

Simply connect to your 'EC2 Instance Connect'-capable AWS EC2 servers using one command. If you use 'EC2 Instance Connect' as described in this article you already noticed that it can become a hassle to connect to instances, especially if you frequently connect to different instances. The sshaws command allows takes care of gathering the necessary information, calling ec2-instance-connect (to register your public key) and, finally, ssh to the instance.

With sshaws, in the best case, connecting to your instances will look like this:

Requirements

  • python3 and pip
  • configured aws credentials and rights to connect to the instance
  • instance needs to support ec2-instance-connect (AWS AMIs support that + you can install it on your servers)
  • public (or private) IP needs to be reachable

Installation

pip install sshaws

You might need to use pip3 if you are not in a virtualenv. You might want to install the package in user space (if you don't have sudo rights). E.g.:

pip3 install --user sshaws

Usage

sshaws <instance-id>

<instance-id> should be replaced by something like: i-074126021e7b3e7f5. The Instance ID can be found in the AWS Console (EC2 view, ECS task description, etc.)

By default it will use the default region, your ssh key at ~/.ssh/id_rsa (private) and ~/.ssh/id_rsa.pub (public) and ec2-user as the username used to connect. See the help output to see how to change these options:

sshaws --help

More Examples

To look for the instance in two different regions use:

sshaws <instance-id> --regions eu-central-1 us-east-1

Config

To avoid having to set command line arguments again and again you can write a config file to ~/.sshaws.conf.

This is an example:

{
    "os_user": "kevin",
    "use_private_id": true,
    "regions": ["eu-central-1", "us-east-1"],
    "key_file_path_private": "/home/example/.ssh/somekey",
    "key_file_path_public": "/home/example/.ssh/somekey.pub",
    "forward_agent": true
}

Private and public key might be combined in the same file in some cases. Just specify both options with the same value.

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

sshaws-0.3.0.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sshaws-0.3.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file sshaws-0.3.0.tar.gz.

File metadata

  • Download URL: sshaws-0.3.0.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.8

File hashes

Hashes for sshaws-0.3.0.tar.gz
Algorithm Hash digest
SHA256 434ffb6feffa2b937803345e76bcebf6520109d1bd52f2531bd3b520a3500d29
MD5 e974a9f1da99ed7f152ddeb3c84dc71d
BLAKE2b-256 15c0528b59e70a9c78a089178d8e3a3108bedcc5f3d1b37e60d962a970855b06

See more details on using hashes here.

File details

Details for the file sshaws-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: sshaws-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.8

File hashes

Hashes for sshaws-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fc664cda5cbcf7d9ba7df4efb9fae35244c8ce5d9d1ee134e538394f457a3799
MD5 2597792f7a62ebb28ff22cb65b00d730
BLAKE2b-256 b30f4b2be6d7fd11a8b43549c58a501138398883ee703b8e0a0a185ee9ac8993

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