Skip to main content

SSH eXtensions

Project description

sshx (SSH eXtensions)

Build Status codecov license Docs Status

sshx is a lightweight wrapper for ssh/scp command, which has the following features:

  • Remember your ssh accounts safely.
  • Connect to your account without typing password.
  • Set jump hosts for your connection.
  • Create ssh port forwardings without typing password.
  • Create socks5 proxy by ssh dynamic port forwarding.
  • Enable jump hosts for your port forwardings.
  • Copy files from/to your account without typing password.
  • Enable jump hosts for your scp connection.
  • Execute remote command without typing password.
  • Enable jump hosts for executing command.
  • Install ssh public keys to remote server.
  • Enable jump hosts for public key installation.

Read full documentation on ReadTheDocs.

Installation

pip install sshx

Supported platform

  • Linux
  • macOS
  • WSL/cygwin/msys2 on Windows

Attention:

  • Native Windows support was removed.
  • Python 2 support was removed.

Requirements

  • Python >= 3.6
  • openssh-clients: ssh, scp, ssh-keygen

Quick Start

  1. Initialization.

    Perform only once after you've installed sshx.

    sshx init
    
  2. Adding an account.

    sshx add myhost -l test@192.168.9.155
    

    (This command will ask you to type your password and sshx would store the encrypted password.)

  3. Connect to the account.

    sshx connect myhost
    

Changelog

0.33.0

New Features

  • enable --forever by default

Fixes

  • fix crash of decryption with python 3.5

0.32.1

Fixes

  • add for scp via jump hosts

0.32.0

New Features

  • add future-fstrings for compatibility of python < 3.6

0.31.0

New Features

  • add --extras for connect command
  • add command copyid
  • use ssh_config for jump hosts instead of -J/-oProxyJump
  • add ssh_config for jump connection

Fixes

  • fix port for account.to_ssh_config()
  • add retry for SSHPexpect.run to fix retry with background
  • encrypt identity passphrase
  • add --bind for command socks to replace -p

0.27.1

New Features

  • add --forever option to keep ssh connection alive forever
  • add socks via
  • add daemonize for running in background
  • add security option

Fixes

  • set expect() to never timeout for foreground
  • fix timeout of forward & socks
  • fix scp with jump and add tests
  • fix local variable 'p' referenced before assignment

0.23.1

Fixes

  • fix password echo when network is bad

0.23.0

New Features

  • add order for click commands
  • add click cli

Fixes

  • fix tests
  • fix expecting and interact
  • fix password revealing when reconnecting failed

0.21.9

New Features

  • add keep alive & retry config
  • add -b/--background for forward & socks command

Fixes

  • handle_update

0.19.8

New Features

  • add sort and reverse for command list
  • add command exec

Fixes

  • (update): fix rename account
  • fix find_vias
  • fix update error

0.17.5

New Features

  • add socks command
  • add debug switch
  • add command show

Fixes

  • fix unittest
  • fix uploading failure on OSX

0.4.3

New Features

  • remove python 2 support

0.3.1

New Features

  • add logging

Fixes

  • remove prints

0.3.0

New Features

  • add scp via multiple jump hosts
  • add connect via multiple jump hosts
  • add jump host for scp
  • add scp command
  • forward without a shell
  • add sshx forward command

Fixes

  • fix tests.test_connect

0.2.1

New Features

  • add via argument for connect

0.2.0

New Features

  • add jump host in command line
  • add jump connection for pexpect

Fixes

  • fix jump connection error

0.1.0

New Features

  • Add test for add command's abbreviation
  • Add abbrev syntax for add command
  • Add auto-adjust window size

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

sshx-0.33.0.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

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

sshx-0.33.0-py2.py3-none-any.whl (38.1 kB view details)

Uploaded Python 2Python 3

File details

Details for the file sshx-0.33.0.tar.gz.

File metadata

  • Download URL: sshx-0.33.0.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.7

File hashes

Hashes for sshx-0.33.0.tar.gz
Algorithm Hash digest
SHA256 d5a4fdfaba74fc51f5ad39b4d69f11341780ddd4e249964119baa04023a36c21
MD5 08e003c9d614c6710ad7560e10892b41
BLAKE2b-256 222703915c538118fbd1069caeb9570aa552099335d8acf7a7507f9636a697aa

See more details on using hashes here.

File details

Details for the file sshx-0.33.0-py2.py3-none-any.whl.

File metadata

  • Download URL: sshx-0.33.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 38.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.7

File hashes

Hashes for sshx-0.33.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1660308ffbedc0198cafab926070935f5b00ce25866911a95a93d83120e75b6a
MD5 8f36960234cfe9fc390253f01fd506b4
BLAKE2b-256 748635686ff3d3d945d83a4dfd3ce1adfd915c60e9e4ce4fea74334f129840ea

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