
Расширенный SSH-клиент с TUI — управление подключениями, ключами и сессиями
SSH-рабочее пространство с постоянными сессиями и живыми панелями состояния.
Поддерживайте удалённые оболочки работающими при обрывах соединения, переключайтесь между хостами с помощью клавиш или мыши и проверяйте состояние системы, не покидая терминал. ESSH использует OpenSSH для подключений и tmux, чтобы ваша работа продолжалась.
Смотрите 42-секундное демо · Скачать запись для браузера
Изучайте диски с помощью df и lsblk, находите занятые процессы с помощью ps, отслеживайте активность системы с помощью vmstat, проверяйте сокеты и интерфейсы с помощью ss и ip.
В демо показаны переключение темы терминала, боковой, половинный и полный виды состояния, переключение сессий, справка
и восстановление того же удалённого шелла после обрыва соединения.
Скачайте бинарный файл для Linux или macOS, на x86_64 или ARM64, со страницы
Releases. Распакуйте архив
и поместите essh куда-нибудь в ваш PATH.
Вам нужны tmux 3.3+ и OpenSSH локально, а также tmux на каждом удалённом хосте. Подробные метрики состояния доступны для хостов Linux.
Или соберите из исходников с помощью Rust:
git clone https://github.com/matthart1983/essh.git
cd essh
cargo build --release
./target/release/essh
ESSH читает хосты из ~/.ssh/config, своей собственной конфигурации и своего кэша хостов.
Например:
Host web-01
HostName 192.168.1.20
User deploy
IdentityFile ~/.ssh/id_ed25519
Запустите essh, выберите хост и нажмите Enter. Используйте / для фильтрации хостов и
Esc для очистки фильтра. Нажмите a, чтобы добавить хост, или e, чтобы отредактировать его.
OpenSSH выполняет аутентификацию и проверку ключей хоста.
| Клавиша | Действие |
|---|---|
| F1 | Открыть или закрыть справку |
| F2 | Циклически переключать терминал → боковое состояние → половинное состояние → полное состояние → терминал |
| F3 | Открыть сессии; выберите сессию или нажмите n, чтобы запустить ещё одну |
| F4 | Вернуться в главное меню, пока сессии продолжают работать |
| F5 / F6 | Переключиться на предыдущую / следующую сессию |
| h на экране хостов | Открыть состояние для выбранного хоста |
| r после обрыва соединения | Переподключиться |
| q на экране хостов | Выйти из ESSH, пока удалённая работа продолжается |
Щёлкайте по вкладкам сессий и элементам навигации для переключения видов. Щёлкните по строке, чтобы выбрать её; двойной щелчок — чтобы подключиться или переключиться. Используйте колесо мыши для прокрутки, щёлкайте по панелям, чтобы сфокусировать их, и перетаскивайте разделители, чтобы изменять их размер.
Если ваша клавиатура использует ряд функциональных клавиш для яркости или громкости, удерживайте Fn при нажатии F-клавиши или включите стандартные функциональные клавиши в настройках клавиатуры. Элементы навигации также кликабельны, а F1 перечисляет доступные клавиши.
Удалённые сессии запускают настроенную оболочку входа удалённой учётной записи и загружают её обычные файлы запуска — zsh, bash, fish или любую другую оболочку, которую использует эта учётная запись. Ваше приглашение, псевдонимы и привязки клавиш оболочки берутся из этой удалённой учётной записи. Существующие оболочки сохраняют своё рабочее состояние при переподключении.
По умолчанию ESSH использует цвета вашего терминала. Выберите тему, чтобы изменить цвет переднего плана и фона оболочки вместе с панелью:
essh --theme terminal
essh --theme netwatch
essh --theme light
Нажмите t в меню или видах состояния, или Ctrl+A, затем t из оболочки, чтобы открыть выбор темы. Стрелки предпросматривают каждую палитру; Enter или щелчок применяет и сохраняет её. Esc отменяет без изменения ваших предпочтений.
Выберите Terminal, Netwatch, Light, Solarized, Dracula, Nord, Ocean или Sky. Netwatch использует угольно-серый фон с бирюзовыми заголовками и зелёными индикаторами. Выбранная тема применяется к меню, видам состояния, панелям навигации и панелям терминала. Выберите Terminal, чтобы восстановить родные цвета вашего терминала. Программы и приглашения всё ещё могут задавать свои собственные цвета.
Чтобы сохранить предпочтение, задайте theme = "terminal" (или другое имя темы) в начале
~/.essh/config.toml. Примените его к открытому рабочему пространству с помощью
essh tmux refresh; SSH-сессии продолжают работать. Ваш эмулятор терминала управляет
шрифтом и размером шрифта.
Нажимайте F2 для циклического переключения между:
| Вид | Что вы видите |
|---|---|
| Терминал | Ваша оболочка с панелями сессий и навигации |
| Боковое состояние | Узкая полоса с трафиком, CPU, памятью, диском и задержкой |
| Половинное состояние | Ваша оболочка и панель, совместно использующие терминал |
| Полное состояние | Сетевой трафик, ядра CPU, память, хранилище, пиры и процессы |
Панели используют тонкие индикаторы и живые показания. Недоступные показания отображаются как —; отключённые хосты чётко помечены. Узкие терминалы пропускают боковые макеты.
На панели:
Для прямого доступа нажмите Ctrl+A, отпустите его, затем h для полного состояния или m для циклического переключения боковое состояние → половинное состояние → выключено.
Используйте F3, затем n, чтобы открыть ещё одну независимую сессию. Переключайтесь с помощью F5 / F6, выбора сессий или мыши. F4 возвращает к списку хостов без завершения ваших сессий.
Идентификаторы сессий переживают локальные перезапуски. Переподключение заново присоединяет удалённую оболочку, когда она всё ещё существует; если она завершилась, ESSH запускает новую оболочку. Удалённое состояние отключённой сессии остаётся непроверенным, пока вы не переподключитесь.