💻 make your ssh client smarter
Formerly Advanced SSH Config.
4 pages about "assh"
assh, formerly known as “Advanced SSH config”, is a smart tool that was designed to wrap tightly around your SSH and enhance it, like a superhero suit that has various gadgets installed. It adds regex, aliases, gateways, dynamic hostnames, graphviz, notifications, json output and yaml configuration.
Some of its configuration features are:
- regex support
- aliases -> gate.domain.tld
- includes: split configuration in multiple files
- gateways -> transparent ssh connection chaining
- inheritance: make hosts inherits from host hosts or templates
- variable expansion: resolve variables from the environment
- desktop notifications: based on events
- Graphviz representation of the hosts
assh manages your
~/.ssh/config file, taking care of keeping its backup.
A few usage examples:
assh config build: Rewrites and replaces the existing ~/.ssh/config file.
assh config graphviz: Generate a graphviz graph of the hosts
assh sockets list: List active control sockets.
assh sockets master: Create a master control sockets.
assh ping: Send packets to the SSH server and display stats.
Those are some of the highlights of assh. Visit its GitHub page to find out more about its configuration, usage and integration.
I’m passionate about devtool and data visualization for a long time. I’m regularly giving trials to new tools in the mission to improve my productivity; I’m also creating some tools by myself (assh, depviz, wookie ADN solver, etc.)
There is a sub-topic where I’m more consuming external tools than producing ones: graph visualization; which contains itself some sub-topics: graph databases, graph optimizations, social graphs, real-time graph, graph UI, etc.
For about a week now, thinking (again) about ”how to represent a complex system”, and more precisely: ”how to make a collaborative tool that allows to defining, viewing and analyzing an unstructured, complex, evolutive, and living system.”
For now, I’m mostly reading articles and PoCing, from what I can see, there are a lot (maybe too much) of different existing solutions that handle every part I would need for the final solution.
Problems to address
- how to store the data
- how to programmatically inject and edit data
- how to manually inject and edit data
- how to generate code based on the model definitions
- how to visualize easily / navigate
- how to perform queries
- how to create real-time dashboards
My plan is now to give a more in-depth look at my favorite options. In this intention, I listed 10 (actually 11) ideas of usages that are easier to implement than my target.
Usages for myself
- Visualize GitHub issues relationships – dependencies, author, people working on, people commenting out, project & organization hierarchy, milestone grouping, labels tagging, etc.
- Visualize Git code/PRs/Commits – similar to GitHub issues above, but based on code instead of issues: code, files, languages, author, PRs, commits, etc.
- Define and visualize IT architecture (intermediary milestone to my target) – host, container, ports, cluster, dependencies, Datacenter, process, developers, product, etc.
- Personal CRM – maintain a wiki about my relationships (people and company), visualize my social graph, etc.
- Blog content relationship – analyze content based on multiple criteria (keywords, tags, labels, label’s metadata, etc.) to analyze what I talk most, and generate better “related posts” suggestions.
- Cross-service social graph – create aggregators to visualize people, groups, the friends of friends, followers, followed, etc.
- Real-time monitoring – define services hierarchically and then write probs that to monitor the health
- Service/Application comparison based on features and other attributes
- My GitHub stats; repos, organizations, languages, libraries, metadata, CI used, followers, custom flags (more than 1000 commits, edited < 1 year ago, has a Dockerfile, contributors, etc.).
- Log parser to analyze user agent to endpoint (real-time dependency) – https://link.medium.com/rSLv1KGPnU
- P2P network efficiency analysis
Bonus: usages for friends
- PayFit: engine rules visualization
- Doctrine: analysis of legal case relationships
- Zenly: social graph, party recommendation
- Sounds.am: social graph, friend/playlist/artist/song recommendations
- Scaleway: visualize relationships between image / volume / volume layer / server entities
PS: about 1 year ago, I forced myself to list “10 something” every morning for a month. Writing this blog post motivated me to retry the experience and share some outputs in the form of small articles on this blog.Note: this article is the output of a routine, the content of this list won't change over time. It's, however, possible that I create a whole new list on the same subject as a dedicated new post.
A Googler would like to recognize your work on assh
I just received this email from someone at Google :)
As you may know, we here in Google’s Open Source Programs Office are always interested in learning about new projects and people in the open source community. To that end, we asked our co-workers to help us by nominating people outside of Google that they thought were doing great things in the world of open source.
Uriel Corfa (Googler) believes your work on assh deserves to be recognized. To show our appreciation for this work, we would like to send you a special thank you gift and a MasterCard worth $250 USD that can be used at merchants and ATMs worldwide.
At your convenience, please fill out our form  with the physical address you would like us to use to ship your gift and MasterCard (it will be shipped via FedEx). If you are located outside of the US it could take a bit longer for your gift to arrive due to customs delays. You must fill out the form by Wednesday, April 20 to receive your funds.
Our 3rd party vendor, Payoneer* will contact you via email to provide more information about the $250 USD MasterCard.
Again we thank you for your great work in the open source community, we appreciate all that you do. Please contact Stephanie Taylor (firstname.lastname@example.org) if you have any questions.
Thank you Google for this program, it’s wonderful to receive an award spontaneously.
This first version contains
- the tools I’m using everyday as a devops.
- but also my piece of code: assh and ssh2docker.
- the projects I love.
- and the one I read the code.
Feel free to share the list and contribute !