SSH Stored CLI
Only works on Linux and MacOS right now
CLI to manage ssh credentials and start sessions with auto-login
The CLI will securely save your passwords (if login is without ssh-keys) along with a name so that you don't need to remember IPs or hostnames when logging in, along with the passwords.
Also supports jumping hosts to access servers inside an internal network.
Credentials are stored using keytar:
On macOS the passwords are managed by the Keychain, on Linux they are managed by the Secret Service API/libsecret, and on Windows they are managed by Credential Vault.
Installation
Prerequisites (Only Linux)
Ubuntu
sudo apt-get install libsecret-1-dev gnome-keyring
Other Linux Distributions
Please check the documentation for keytar to download them
Package Installation
npm install -g sshs
Usage
Type sshs
in the terminal to access the CLI.
Immediate access
To immediately access a host just pass the name you specified during setup as an argument like below:
Configure hosts
Add new hosts
The first usage should prompt you to fill in details of a host, but from then on, a "Add new Host" option should be in the list of hosts which will prompt you to fill in details of a new host
Configuring existing hosts
Configure existing hosts using the --config
flag which will allow you to change the options for certain hosts
Jumping hosts
To use jumping hosts, first create the first Host (the one you'll use to jump to the final destination host), and then follow this:
When selecting texel10
it will automatically jump to texel10 using doc-shell1
to get to it, all with auto login
Full options:
usage: sshs [-h] [-v] [--clear] [--hop] [--config] [hostID]
SSH Keystore CLI Tool
positional arguments:
hostID Host ID to immediately connect (use "new" to create a new host)
optional arguments:
-h, --help show this help message and exit
-v, --version show program's version number and exit
--clear Clear configurations
--hop Create new host by hopping
--config Configure hosts