GitHub - lfaoro/ssm: Terminal UI for SSH written in Go
Extracto
Terminal UI for SSH written in Go. Contribute to lfaoro/ssm development by creating an account on GitHub.
Resumen
Aquí tienes el resumen profesional y detallado del contenido proporcionado:
Resumen Principal
SSM, o Secure Shell Manager, es una interfaz de usuario de terminal (TUI) de código abierto escrita en Go que optimiza la gestión de conexiones SSH. Diseñada para ingenieros, esta herramienta centraliza la organización de servidores, facilita la conexión y permite filtrar y etiquetar hosts de manera eficiente, todo desde un entorno de terminal sencillo. Su diseño incorpora una navegación intuitiva con atajos de teclado inspirados en Vim, la capacidad de recargar automáticamente la configuración SSH y la opción de alternar rápidamente entre SSH y MOSH. SSM busca mejorar la productividad al simplificar tareas rutinarias como la edición de configuraciones y la administración de múltiples servidores mediante un sistema de etiquetado avanzado. Con una clara hoja de ruta que incluye funcionalidades para la ejecución de comandos remotos y la transferencia de archivos, SSM se posiciona como una solución integral para la interacción eficiente con infraestructuras, prometiendo una experiencia de usuario ágil y unificada.
Elementos Clave
- Interfaz de Usuario en Terminal (TUI) y Navegación Eficiente: SSM se distingue por su interfaz basada en texto, lo que permite a los ingenieros gestionar sus servidores directamente desde la línea de comandos. Incorpora atajos de teclado inspirados en Vim (jkhl, ctrl+d/u, g/G), garantizando una navegación rápida y familiar para muchos usuarios avanzados, y optimizando así la interacción con la herramienta sin necesidad de una interfaz gráfica.
- Organización y Gestión Avanzada de Conexiones: La herramienta ofrece capacidades robustas para organizar servidores, incluyendo filtrado exhaustivo y la capacidad de etiquetar hosts mediante tags extendidos en la configuración SSH (ej.
#tag: admin). Esto facilita la agrupación y el acceso rápido a subconjuntos específicos de servidores, mejorando significativamente la escalabilidad y la facilidad de gestión para entornos con múltiples máquinas. - Funcionalidades de Conectividad y Configuración Inmediata: SSM permite conectar y desconectar fácilmente de hosts, con la opción de **alternar entre SSH y
Contenido
Secure Shell Manager
Terminal UI for SSH written in Go
SSM is an open source (MIT) SSH connection manager that helps engineers organize servers, connect, filter, tag, execute commands (soon), transfer files (soon), and much more from a simple terminal interface.
Notable features
- vim keys navigation: jkhl, ctrl+d/u, g/G
- auto-reload SSH config on change
- filter through all your servers
- simple connect and return flow
- switch between SSH and MOSH with a tab
- quickly edit configs
<ctrl+e> - create free root servers for research
- extended config with
#tag:keys, e.g.:$ ssm adminwill load only hosts w/#tag: admin ssm --exitwill exit ssm once a conn is establishedssm --showorctrl+vin the UI will show selected host params
See CHANGELOG for more info.
See HELP for CLI flags.
Key-binds
<enter↵> connect to selected host
<ctrl+v> show config for selected host
<ctrl+e> edit ssh configs
<tab> switch between SSH/MOSH
</ or ?> filter hosts
<q / esc> quit
# under development (coming soon)
ctrl+r run commands on the server without starting a pty
ctrl+s sftp upload/download files to/from server
ctrl+p port-forwarding UI
space␣ select multiple hosts to interact with
Install
Download ssm binary from Releases
available for Linux, MacOS, Freebsd (need more archs? just ask)
# bash one-liner for linux/macos curl -sSL https://raw.githubusercontent.com/lfaoro/ssm/refs/heads/main/scripts/get.sh | bash wget -qO- https://raw.githubusercontent.com/lfaoro/ssm/refs/heads/main/scripts/get.sh | bash # brew only for macos brew install lfaoro/tap/ssm # go install (requires Go) go install github.com/lfaoro/ssm@latest
Build from source
requires Go
git clone https://github.com/lfaoro/ssm.git \ && cd ssm \ && make build \ && bin/ssm
Help
Road map
- add port-forwarding UI
- add run command on host
- add multiple hosts selection
- add run commands on multiple hosts asynchronously
- add sftp with interactive files selector
- add sftp to multiple hosts async
Contributors
Pull requests are very welcome and will be merged. Feature requests are also welcome, we're happy to implement your ideas.
Support SSM
If ssm is useful to you, kindly give us a star.
-
star the repo
-
tell your friends
License
Fuente: GitHub
