sshmenu is a simple tool for connecting to remote hosts via ssh. Great if you have trouble remembering ip addresses, hostnames, or usernames.
This tool works by using Python's os.execvp(...), which will replace the current process (python) with ssh to create a seamless transition.
Tested working on macOS High Sierra (10.13.1) and Ubuntu Trusty Tahr (14.04), Xenial Xerus (16.04)
macOS
brew install https://raw.githubusercontent.com/mmeyer724/sshmenu/master/sshmenu.rb
sshmenuLinux
pip3 install sshmenu
sshmenuDevelopment
git clone https://github.com/mmeyer724/sshmenu.git
cd sshmenu
pip3 install -r requirements.txt
python3 -m sshmenuOn first run an example configuration file will be created for you, along with the path. For reference, I've added this information here as well.
OS X
nano ~/Library/Application\ Support/sshmenu/config.jsonLinux
nano ~/.config/sshmenu/config.jsonDefault contents
{
"targets": [
{
"host": "[email protected]",
"friendly": "This is an example target",
"options": []
},
{
"command": "mosh",
"host": "[email protected]",
"friendly": "This is an example target using mosh",
"options": []
}
]
}You can specify additional command line options (see man ssh) as follows:
{
"targets": [
{
"host": "[email protected]",
"friendly": "An example target listening non-standard port and verbose flag",
"options" : [
"-p443",
"-v"
]
}
]
}- Automatically ask to place your
~/.ssh/id_rsa.pubinto the remote host's~/.ssh/authorized_keys
