awesome-ssh
:computer: A curated list of SSH resources.
https://github.com/moul/awesome-ssh
Last synced: 5 days ago
JSON representation
-
Apps
-
Network
- wssh - *SSH* to WebSockets Bridge.
- docker-volume-sshfs - volume-sshfs.svg?style=social&label=stars)](https://github.com/vieux/docker-volume-sshfs) - `sshfs` docker volume plugin.
- quicssh - QUIC proxy for SSH
- sshpiper - The missing reverse proxy for ssh scp.
- sshhub - Web Service: access your SSH servers behind firewalls (ssh-teamviewer).
- ngrok - Introspected tunnels to localhost.
- localtunnel - Expose localhost servers to the Internet.
- sshfs - Filesystem client based on the *SSH* File Transfer Protocol.
- sshuttle - Transparent proxy server that works as a poor man's *VPN*. Forwards over `ssh`. Doesn't require admin. Works with *Linux* and *MacOS*. Supports *DNS tunneling*.
- sshttp - *SSH*/*HTTP(S)* multiplexer. Run a webserver and a `sshd` on the same port w/o changes.
- switcher - Run *SSH* and *HTTP(S)* on the same port.
- sslh - Applicative Protocol Multiplexer (i.e: *SSH* + *HTTPS*).
- tund - *SSH* reverse tunnel daemon.
-
Multiplexers
- clusterssh - Cluster admin via *SSH*.
- tm - `tmux` manager / helper.
- i2cssh - `csshX` like *SSH* tool for *iTerm2*.
- tmux-cssh - cssh.svg?style=social&label=stars)](https://github.com/dennishafemann/tmux-cssh) - `tmux` with a *ClusterSSH*-like behavior.
-
*SSH* keys / Authentication
- authy-ssh - ssh.svg?style=social&label=stars)](https://github.com/authy/authy-ssh) - Easy *two-factor* authentication for *SSH* servers.
- github-auth - auth.svg?style=social&label=stars)](https://github.com/chrishunt/github-auth) - *SSH* key management for GitHub users.
- cipherhub - Encrypt messages based on *SSH* public keys with easy import from GitHub.
- Slack notifications - ssh-session-notifications/)) - Guide to setup Slack notifications (can be modified for other services).
- ServerAuth - Automatically sync SSH access across servers
- ServerAuth - Automatically sync SSH access across servers
- totp-ssh-fluxer - ssh-fluxer.svg?style=social&label=stars)](https://github.com/benjojo/totp-ssh-fluxer) - A way to make sure your `sshd` port changes every 30 seconds.
- github-keygen - keygen.svg?style=social&label=stars)](https://github.com/dolmen/github-keygen) - Easy creation of secure *SSH* configuration for your GitHub account(s).
- kr - keygen.svg?style=social&label=stars)](https://github.com/KryptCo/kr) - Kr agent that route access request to the paired mobile phone where Kryptonite is installed.
- HIBA - Central management of access to a fleet of machines without pushing authorized_users files.
-
Web
- GateOne - HTML5-powered terminal emulator and *SSH* client.
- SSHmon - Real-time GUI to monitor SSH connections and establish port forwardings.
- Apache Guacamole - Apache Guacamole is a HTML5 based clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH.
- Secure Shell chrome extension
-
Testing / Honeypots
- ssh-hammer - hammer.svg?style=social&label=stars)](https://github.com/shazow/ssh-hammer) - *SSH* load testing tool.
- kippo - *SSH* Honeypot.
- sshmitm - *SSH* monkey-in-the-middle.
- sshmitm - *SSH* monkey-in-the-middle.
- ssh-audit - audit.svg?style=social&label=stars)](https://github.com/arthepsy/ssh-audit) - A tool for *SSH* server auditing.
- sshesame - A fake SSH server that lets everyone in and logs their activity.
-
`.ssh/config`
- ansible-ssh-config - ssh-config.svg?style=social&label=stars)](https://github.com/gaqzi/ansible-ssh-config) - Letting *Ansible* manage `ssh_config`.
- ec2ssh - A `ssh_config` manager for *AWS EC2*.
- `assh` - ssh-config.svg?style=social&label=stars)](https://github.com/moul/advanced-ssh-config) - Transparent wrapper (ProxyCommand) that adds regex, aliases, gateways, includes, dynamic hostnames to *SSH* and `ssh-config`. _Previously: `advanced-ssh-config`_
- storm - Manage your *SSH* like a boss.
- ssh-config - config.svg?style=social&label=stars)](https://github.com/dbrady/ssh-config) - A tool to help manage your `.ssh/config` file.
-
Servers
- sshportal - simple, fun, and transparent SSH (& Telnet) Bastion Server
- sshcommand - Turn *SSH* into a thin client specifically for your app.
- x84 - A *python* `telnet`/`ssh` server for modern *UTF-8* and classic *cp437* network virtual terminals. In spirit of classic software such as *ami/x*, *teleguard*, *renegade*, *iniquity*.
- teleport - Modern *SSH* server for clusters and teams.
- ShellHub - io/shellhub.svg?style=social&label=stars)](https://github.com/shellhub-io/shellhub) - A *SSH* gateway for remotely accessing any Linux device behind firewall and NAT.
- ssh2docker - *SSH* server to Docker containers.
- ssh-proxy - tooling/ssh-proxy.svg?style=social&label=stars)](https://github.com/ml-tooling/ssh-proxy) - Dockerized SSH bastion to proxy SSH connections to arbitrary containers.
- sshfront - Programmable *SSH* frontend.
- ssh-chat - chat.svg?style=social&label=stars)](https://github.com/shazow/ssh-chat) - Chat over *SSH*.
-
Alternatives to *SSH*
- rsh - An unencrypted network protocol and application used to connect to remote computers and issue commands.
- telnet - An unencrypted network protocol and an application used to connect to remote computers and issue commands.
- GoTTY - Share your terminal as web application.
- ttyd - Share your terminal over the web.
-
Tools using the *SSH* protocol
-
Automation
- DSH - Dancer's shell / distributed shell - Wrapper for executing multiple remote shell commands from one command line.
- Ansible - App deployment, configuration management and orchestration over *SSH*.
- rtop - Interactive, remote system monitoring tool based on *SSH*.
- parallel-ssh - ssh.svg?style=social&label=stars)](https://github.com/ParallelSSH/parallel-ssh) - Provides parallel versions of OpenSSH and related tools.
-
*SSH* agent
- ssh-ident - ident.svg?style=social&label=stars)](https://github.com/ccontavalli/ssh-ident) - Different agents and different keys for different projects, with `ssh`.
- oh-my-zsh/plugins/ssh-agent - my-zsh.svg?style=social&label=stars)](https://github.com/robbyrussell/oh-my-zsh) - `ssh-agent` plugin for `zsh`.
- sshecret - Automatically create and manage multiple agents for multiple keys.
-
Tools
- xxh - Bring your favorite shell wherever you go through the ssh.
- sshrc - Bring your `.bashrc`, `.vimrc`, etc. with you when you `ssh`.
- kyrat - SSH wrapper script that brings your dotfiles always with you on Linux and OSX.
- ssh-vault - vault/ssh-vault.svg?style=social&label=stars)](https://github.com/ssh-vault/ssh-vault) - encrypt/decrypt files using ssh keys
- ssh-ping - tools.svg?style=social&label=stars)](https://github.com/vaporup/ssh-tools) - check if host is reachable using ssh_config
- SSHPry v2 - Spy & Control os SSH Connected client's TTY
- redial - Terminal Based SSH Session Manager for Unix Systems
-
-
Resources
-
Documentation
-
Tutorials
- How to use *SSH* to Connect to a Remote Server
- Granting Temporary Access to Your Servers (Using Signed *SSH* Keys)
- Best practices
- How to SSH login without a password
- Gist: SSH Recipes - Collection of recipes for writing awesome ssh config files.
-
Security
- 01/14/2016 - Integer Overflow `CVE 2016 077[7-8]`.
- Security/Guidelines/OpenSSH - MozillaWiki - `sshd\_config` for `6.7+`, `5.3`.
- Security/Guidelines/OpenSSH - MozillaWiki - `sshd\_config` for `6.7+`, `5.3`.
- Applied-Crypto-Hardening - Crypto-Hardening.svg?style=social&label=stars)](https://github.com/BetterCrypto/Applied-Crypto-Hardening) - `sshd\_config` for `6.X`
-
Community
-
-
Libraries
-
Alternatives to *SSH*
- libssh - The *SSH* library.
- crypto/ssh - Built-in *SSH* client and server library.
- jsch - Pure *java*, *BSD* licensed, *SSH2* client library.
- sftp - *SFTP* support for the go.crypto/ssh package.
- go-sshkit - sshkit.svg?style=social&label=stars)](https://github.com/shazow/go-sshkit) - Toolkit for building *SSH* servers and clients in Go.
- Socker - Library for Go to simplify the use of *SSH*.
- go-sshkeys - Golang SSH Keys manipulation library
- jsch - Pure *java*, *BSD* licensed, *SSH2* client library.
- ssh2 - *SSH2* client and server modules written in pure *JavaScript* for *node.js*.
- paramiko - Native *Python* *SSHv2* protocol library.
- net-ssh - ssh/net-ssh.svg?style=social&label=stars)](https://github.com/net-ssh/net-ssh) - Pure *Ruby* implementation of an *SSH* (protocol 2) client.
-
Programming Languages
Categories
Sub Categories
Keywords
ssh
21
golang
5
go
4
bastion
4
devops
4
security
3
proxy
3
python
3
ssh-server
3
docker
3
ssh-client
2
kubernetes
2
jumpserver
2
ssh-tunnel
2
cli
2
gateway
2
server
2
http
2
linux
2
websocket
2
tty
2
terminal
2
https
2
powerlevel9k
1
shell
1
xonsh
1
powerlevel10k
1
osquery
1
openssh
1
ohmyzsh
1
xxh
1
zsh
1
sftp
1
aes-256
1
ed25519
1
encryption
1
keys
1
rsa
1
ssh-keygen
1
ssh-keys
1
vault
1
ansible
1
auditing
1
azuread
1
openwrt
1
ssl
1
terminal-emulators
1
ttyd
1
websockets
1
xterm
1