manssh alternatives and similar packages
Based on the "DevOps Tools" category.
Alternatively, view manssh alternatives based on common mentions on social networks and blogs.
-
Moby
Moby Project - a collaborative project for the container ecosystem to assemble container-based systems -
Packer
Packer is a tool for creating identical machine images for multiple platforms from a single source configuration. -
Flynn
[UNMAINTAINED] A next generation open source platform as a service (PaaS) -
webhook
webhook is a lightweight incoming webhook server to run shell commands -
Ddosify
High-performance load testing tool, written in Golang. For distributed and Geo-targeted load testing: Ddosify Cloud - https://ddosify.com 🚀 -
Mizu
The API traffic viewer for Kubernetes providing deep visibility into all API traffic and payloads going in, out and across containers and pods inside a Kubernetes cluster. Think TCPDump and Wireshark re-invented for Kubernetes [Moved to: https://github.com/kubeshark/kubeshark] -
dasel
Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package. -
StatusOK
Monitor your Website and APIs from your Computer. Get Notified through Slack, E-mail when your server is down or response time is more than expected. -
goxc
a build tool for Go, with a focus on cross-compiling, packaging and deployment -
s3gof3r
Fast, concurrent, streaming access to Amazon S3, including gof3r, a CLI. http://godoc.org/github.com/rlmcpherson/s3gof3r -
Fleet device management
Open-source device management for IT and security teams with thousands of laptops and servers. (macOS, Windows, Linux, ChromeOS, AWS, Google Cloud, Azure, data center, containers) -
uTask
µTask is an automation engine that models and executes business processes declared in yaml. ✏️📋 -
kwatch
:eyes: monitor & detect crashes in your Kubernetes(K8s) cluster instantly -
cassowary
:rocket: Modern cross-platform HTTP load-testing tool written in Go -
jcli
Jenkins CLI allows you to manage your Jenkins in an easy way. Jenkins 命令行客户端 -
Pewpew
Flexible HTTP command line stress tester for websites and web services -
easyssh-proxy
easyssh-proxy provides a simple implementation of some SSH protocol features in Go -
metric
Minimal metrics for Go (counter/gauge/histogram). No dependencies. Compatible with expvar. Web UI included.
Clean code begins in your IDE with SonarLint
Do you think we are missing an alternative of manssh or a related project?
Popular Comparisons
README
manssh
manssh is a command line tool for managing your ssh alias config easily, inspired by storm project, powered by Go.
Note: This project is actually a simple glue project, the most complex and core parsing ssh config file logic implements by ssh_config, I didn't do much. At first it was just a imitation of storm, now it has become a little different.
Feature
- No dependence.
- Add, list, query, delete ssh alias record.
- Backup ssh config.
- Support Include directive.
Install
Gopher
go get -u github.com/xwjdsh/manssh/cmd/manssh
Homebrew
brew tap xwjdsh/tap
brew install xwjdsh/tap/manssh
Docker
alias manssh='docker run -t --rm -v ~/.ssh/config:/root/.ssh/config wendellsun/manssh'
Manual
Download it from releases, and extract it to your PATH
directory.
Usage
% manssh
NAME:
manssh - Manage your ssh alias configs easily
USAGE:
manssh [global options] command [command options] [arguments...]
VERSION:
master
COMMANDS:
add, a Add a new SSH alias record
list, l List or query SSH alias records
update, u Update SSH record by specifying alias name
delete, d Delete SSH records by specifying alias names
backup, b Backup SSH config files
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--file value, -f value (default: "/Users/wendell/.ssh/config")
--help, -h show help
--version, -v print the version
Add a new alias
# manssh add test2 2.2.2.2
# manssh add test1 [email protected]:77 -c IdentityFile=~/.ssh/wendell
% manssh add test1 [email protected]:77 -i ~/.ssh/wendell
✔ alias[test1] added successfully.
test1 -> [email protected]:77
identityfile = /Users/wendell/.ssh/wendell
Username and port config is optional, the username is current login username and port is 22
by default.
Using -c
to set more config options. For convenience, -i xxx
can instead of -c identityfile=xxx
.
List or query alias
# manssh list
# manssh list "*"
# manssh list Test -ic
% manssh list test1 77
✔ Listing 1 records.
test1 -> [email protected]:77
identityfile = /Users/wendell/.ssh/wendell
It will display all alias records If no params offered, or it will using params as keywords query alias records.
If there is a -it
option, it will ignore case when searching.
Update an alias
# manssh update test1 -r test2
# manssh update test1 [email protected]:22022
% manssh update test1 -i "" -r test3 -c hostname=3.3.3.3 -c port=22022
✔ alias[test3] updated successfully.
test3 -> [email protected]:22022
Update an existing alias record, it will replace origin user, hostname, port config's if connected string param offered.
You can use -c
to update single and extra config option, -c identityfile= -c proxycommand=
will remove identityfile
and proxycommand
options.
For convenience, -i xxx
can instead of -c identityfile=xxx
Rename the alias specified by -r
flag.
Delete one or more alias
# manssh delete test1
% manssh delete test1 test2
✔ alias[test1,test2] deleted successfully.
Backup ssh config
% manssh backup ./config_backup
✔ backup ssh config to [./config_backup] successfully.
For Include directive
If you use the Include
directive, there are some extra notes.
Add -p
(--path) flag for list
,add
,update
,delete
command to show the file path where the alias is located, it can also be set by the MANSSH_SHOW_PATH environment variable.
MANSSH_SHOW_PATH
Set to true
to show the file path where the alias is located. Default is false
.
Add -ap
(--addpath) flag for add
command to specify the file path to which the alias is added, it can also be set by the MANSSH_ADD_PATH environment variable.
MANSSH_ADD_PATH
This file path indicates to which file to add the alias. Default is the entry config file.
For convenience, you can export these environments in your .zshrc
or .bashrc
,
example:
export MANSSH_SHOW_PATH=true
export MANSSH_ADD_PATH=~/.ssh/config.d/temp
Thanks
Licence
*Note that all licence references and agreements mentioned in the manssh README section above
are relevant to that project's source code only.