Skip to main content

CLI client for Geofront, a simple SSH key management server

Project description

Latest PyPI version Build status (Travis CI) Build status (AppVeyor)

It provides a CLI client for Geofront, a simple SSH key management server.

Installation

It is available on PyPI, so you can install it using pip installer. We, however, recommend to use pipsi instead so that geofront-cli and its dependencies don’t make your global site-packages messy.

$ pipsi install geofront-cli

Getting started

What you have to do first of all is to configure the Geofront server URL. Type geofront-cli start and then it will show a prompt:

$ geofront-cli start
Geofront server URL:

We suppose http://example.com/ here. It will open an authentication page in your default web browser:

$ geofront-cli start
Geofront server URL: http://example.com/
Continue to authenticate in your web browser...
Press return to continue

List available remotes

You can list the available remotes using geofront-cli remotes command:

$ geofront-cli remotes
web-1
web-2
web-3
worker-1
worker-2
db-1
db-2

If you give -v/--verbose option it will show their actual addresses as well:

$ geofront-cli remotes -v
web-1        ubuntu@192.168.0.5
web-2        ubuntu@192.168.0.6
web-3        ubuntu@192.168.0.7
worker-1     ubuntu@192.168.0.25
worker-2     ubuntu@192.168.0.26
db-1 ubuntu@192.168.0.50
db-2 ubuntu@192.168.0.51

SSH to remote

You can easily connect to a remote through SSH. Use geofront-cli ssh command instead of vanilla ssh:

$ geofront-cli ssh web-1
Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 2.6.32-042stab078.27 i686)

 * Documentation:  https://help.ubuntu.com/
ubuntu@web-1:~$

In most cases, you probably need to list remotes to find an alias to SSH before run geofront-cli ssh command. geofront-cli go command is a single command for these two actions at once:

$ geofront-cli go
(...interactive fuzzy finder for remotes is shown...)
Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 2.6.32-042stab078.27 i686)

 * Documentation:  https://help.ubuntu.com/
ubuntu@web-1:~$

Note that there’s a shortcut command gfg which is an alias of geofront-cli go.

There is geofront-cli scp command as well, which is corresponding to scp:

$ geofront-cli scp file.txt web-1:file.txt
file.txt                                      100% 3157     3.1KB/s   00:00
$ geofront-cli scp -r web-1:path/etc/apt ./
sources.list                                  100% 3157     3.1KB/s   00:00
trusted.gpg                                   100%   14KB  13.9KB/s   00:00

Missing features

  • Shortcut for geofront-cli ssh command

  • Make geofront-cli ssh similar to ssh

  • Autocompletion

Author and license

Hong Minhee wrote geofront-cli, and Spoqa maintains it. It is licensed under GPLv3 or later.

Changelog

Version 0.4.4

Released on April 03, 2020.

  • Fixed some command won’t work properly. This bug occured when running ssh or scp command through the other command. (e.g. geofront-cli go) [#19 by cynthia]

Version 0.4.3

Released on March 25, 2020.

  • Added jump host options to use ProxyJump in SSH. [#18 by cynthia]

Version 0.4.2

Released on February 26, 2020.

  • Added supporting for LibreSSL. [#16 by cynthia]

Version 0.4.1

Released on May 24, 2017.

  • Fixed a bug that geofront-cli go/gfg had crashed with AttributeError when a user cancelled (i.e. Ctrl-C) to select a remote. [#10]

Version 0.4.0

Released on May 23, 2017.

  • Dropped support of Python 2.6 and 3.2.

  • geofront-cli go command and its alias shortcut gfg were introduced. It’s an interactive user interface to select a remote and SSH to it at once.

  • Fixed verification failure of SSL certificates when Python was installed using Homebrew on macOS. Now it depends on Certifi.

  • Now the output list of geofront-cli remotes is sorted.

  • The second column of geofront-cli remotes --verbose result became vertically aligned.

  • The second column of geofront-cli remotes --verbose result became to omit the port number if it’s 22 so that these are easy to copy-and-paste into other SSH programs.

  • Loading spinners became shown when time-taking tasks are running.

Version 0.3.4

Released on April 3, 2017.

  • Fixed UnicodeError during signing the running Python 3 executable on macOS.

Version 0.3.3

Released on March 30, 2017.

Version 0.3.2

Released on May 31, 2016.

  • Fixed ImportError on Python 2.6.

Version 0.3.1

Released on May 28, 2016.

  • Forward compatibility with Geofront 0.4.

Version 0.3.0

Released on January 15, 2016.

  • Fixed an AttributeError during handling error sent by server. [#4]

Version 0.2.2

Released on November 14, 2014.

  • Added -v/--version option.

  • Fixed an AttributeError during handling error from server. [#2, #3 by Lee Jaeyoung]

Version 0.2.1

Released on June 29, 2014.

  • Added geofront-cli scp command.

  • Added the short option -S for --ssh.

  • It becomes to no more depend on dirspec. Instead it’s simply bundled together.

  • geofront-cli now prints a usage description when no subcommand specified.

Version 0.2.0

Released on May 3, 2014.

  • Added handling of unfinished authentication error.

  • Added handling of incompatible protocol version.

Version 0.1.1

Released on April 22, 2014.

  • Fixed Python 2 incompatibility.

  • Added warning for non-SSL server URL.

Version 0.1.0

First pre-alpha release. Released on April 21, 2014.

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

geofront-cli-0.4.4.tar.gz (23.5 kB view details)

Uploaded Source

Built Distribution

geofront_cli-0.4.4-py2.py3-none-any.whl (38.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file geofront-cli-0.4.4.tar.gz.

File metadata

  • Download URL: geofront-cli-0.4.4.tar.gz
  • Upload date:
  • Size: 23.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.6

File hashes

Hashes for geofront-cli-0.4.4.tar.gz
Algorithm Hash digest
SHA256 3519f3200e2dc3673c3d7917a7671f9bf29546d125eb5ad76405ca928784ac99
MD5 77a6bd030b2fe5a6c495e097af6130f5
BLAKE2b-256 fc8c1c1d80677a4596f23cb535acc643dd66dc22e5810131541a2c696d088d8c

See more details on using hashes here.

File details

Details for the file geofront_cli-0.4.4-py2.py3-none-any.whl.

File metadata

  • Download URL: geofront_cli-0.4.4-py2.py3-none-any.whl
  • Upload date:
  • Size: 38.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.6

File hashes

Hashes for geofront_cli-0.4.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3879c27301d3bc143d83941a9e5db1fe592b356a79a1a710a38a7d59cb366b62
MD5 63220d996d4cccca22cb688ea28bb32c
BLAKE2b-256 da7997d7b321983a38eab5f99be9d9af274f1b1139afb0ac4ee1f9334340c133

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