Лёгкий терминальный TUI для управления подключениями SSH, serial, telnet, SFTP, FTP, WebDAV и S3 в одном бинарном файле.
Gu1llaum-3/sshm
TUI в терминале для просмотра SSH-хостов из ~/.ssh/config, подключения к ним и управления ими.
- Звёзды
- 1,413
- Форки
- 79
- Открытые issues
- 25
- Последний коммит
- 16 дней назад
Что это?
SSHM — менеджер SSH с интерфейсом командной строки, написанный на Go. Он читает и изменяет существующий файл ~/.ssh/config и показывает хосты в интерактивном списке терминала: в нём можно искать по имени, hostname или тегу и подключаться одним нажатием клавиши. Также можно подключиться прямо из shell командой sshm <host> или таким же способом выполнить команду на удалённом хосте.
SSHM помогает не только подключаться, но и управлять хостами: добавлять, редактировать и удалять записи с помощью пошаговых форм, перемещать хосты между файлами конфигурации, подключёнными через Include, а также проверять доступность хостов по SSH с помощью цветовых индикаторов статуса. В интерфейсе можно настроить проброс портов (локальный, удалённый и динамический SOCKS), а недавно использовавшиеся конфигурации проброса сохраняются для повторного использования. История подключений позволяет сортировать список по времени последнего входа.
SSHM напрямую работает со стандартной конфигурацией OpenSSH, поддерживает директивы Include и пользовательские файлы конфигурации, указанные через -c, а перед изменением файлов создаёт резервные копии. Программа поставляется в виде одного бинарного файла для Linux, macOS и Windows.
Ключевые возможности
- 01Интерактивный TUI для поиска SSH-хостов, просмотра списка и подключения к ним
- 02Подключение и выполнение команд на удалённых хостах прямо из shell с помощью sshm <host>
- 03Локальный, удалённый и динамический (SOCKS) проброс портов с сохранением истории
- 04Добавление, редактирование, перемещение и удаление записей о хостах без нарушения структуры ~/.ssh/config
- 05Фоновые проверки доступности хостов по SSH с индикаторами статуса
- 06Автоматическое создание резервных копий перед изменением конфигурации
Сценарии использования
- Управление большим количеством серверов, настройки которых распределены по нескольким файлам SSH config, подключённым через Include
- Быстрое создание туннелей к базам данных или SOCKS-прокси для доступа к внутренним сервисам
- Проверка доступности серверов перед выполнением работ по обслуживанию
- Запуск разовых команд на production-хостах из скриптов или shell
Быстрый старт
- 1
Установите через Homebrew (macOS)
brew install Gu1llaum-3/sshm/sshm - 2
Или установите с помощью однострочного скрипта для Unix/Linux/macOS
Установите по официальной инструкции из README - 3
Запустите интерактивный TUI
sshm
Что важно знать
- Требуется файл ~/.ssh/config, поэтому можно управлять только хостами, уже указанными в нём или добавленными через него.
- Для переноса хостов в файл необходимо настроить директивы SSH Include в конфигурации.
Темы
Частые вопросы
- Что такое sshm?
- TUI в терминале для просмотра SSH-хостов из ~/.ssh/config, подключения к ним и управления ими. SSHM — менеджер SSH с интерфейсом командной строки, написанный на Go. Он читает и изменяет существующий файл ~/.ssh/config и показывает хосты в интерактивном списке терминала: в нём можно искать по имени, hostname или тегу и подключаться одним нажатием клавиши. Также можно подключиться прямо из shell командой sshm <host> или таким же способом выполнить команду на удалённом хосте.
- sshm можно использовать бесплатно? Какая у него лицензия?
- sshm распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- sshm всё ещё поддерживается?
- Активно поддерживается. Последний коммит в sshm — 4 окт. 2026 г..
- Для чего можно использовать sshm?
- Управление большим количеством серверов, настройки которых распределены по нескольким файлам SSH config, подключённым через Include Быстрое создание туннелей к базам данных или SOCKS-прокси для доступа к внутренним сервисам Проверка доступности серверов перед выполнением работ по обслуживанию Запуск разовых команд на production-хостах из скриптов или shell
- Как установить sshm?
- Установите через Homebrew (macOS): brew install Gu1llaum-3/sshm/sshm Или установите с помощью однострочного скрипта для Unix/Linux/macOS Запустите интерактивный TUI: sshm
- Где скачать sshm?
- Исходный код и инструкции по установке — на GitHub: https://github.com/Gu1llaum-3/sshm
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Терминальная панель на Textual для создания, редактирования, приостановки и мониторинга cron-задач на локальных машинах и удалённых серверах по SSH.
Терминальная программа для чтения и форматирования Markdown-файлов и репозиториев с оформлением в CLI.
Терминальный интерфейс для rsync: профили повторно используемых передач, предварительный просмотр изменений и отслеживание прогресса, в том числе по SSH.
Терминальный менеджер загрузок на Go с управлением с клавиатуры: разбивает файлы на параллельные части и загружает их с нескольких зеркал.
Терминальная заставка на Go, которая запускается при простое shell и показывает анимированные сцены: созвездия, дождь, частицы и другие.