Skip to content
msksrvPublic

About

MSKTerm — SSH & Serial terminal, SFTP file manager, editor and encrypted vault for Windows. Free for non-commercial use.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

MSKTerm

SSH & Serial Terminal · SFTP · File Manager · Secure Vault · AI

Один инструмент для серверов, сетевого оборудования и последовательных консолей.

MSKTerm — настольное приложение для Windows и Linux. Подключайтесь к серверам по SSH, работайте с последовательными портами, переносите файлы по SFTP, редактируйте конфигурации, управляйте SSH-ключами и при необходимости спрашивайте ИИ прямо в сессии — без постоянного переключения между разными программами.

Версия: 0.1.21 · Платформы: Windows 7–11 · Linux x86_64 · Лицензия: бесплатно для некоммерческого использования

⬇ Скачать · English

MSKTerm объединяет терминал, файловый менеджер, редактор и опционального ИИ-помощника. Особенно полезен там, где обычного SSH недостаточно: при настройке маршрутизаторов, работе с UART-консолями, обслуживании серверов через bastion-хосты, исправлении конфигураций с откатом и быстрой диагностике служб по логам.

Главное окно MSKTerm

Зачем нужен MSKTerm

Обычный рабочий процесс часто требует нескольких приложений: SSH-клиента для консоли, отдельной программы для COM-порта, SFTP-клиента для файлов, редактора для конфигураций и утилиты для управления ключами. MSKTerm собирает эти задачи в одном окне с сохранёнными подключениями и вкладками.

Это не просто «терминал с дополнительными кнопками». В программе предусмотрены сценарии, которые важны при реальной эксплуатации: автопереподключение SSH и USB-UART без потери вкладки, предупреждения при изменении удалённого файла, зашифрованная история редактора, доступ к файлам через sudo, chmod в файловом менеджере, управляемая установка SSH-ключей и ИИ с вашим API-ключом (секреты маскируются до отправки).

Скачать и запустить

Файлы — на странице релизов. SHA-256 указаны в описании релиза.

Windows 10/11 (x64): mskterm-0.1.21.exe — основная сборка, установка не нужна.

Get-FileHash .\mskterm-0.1.21.exe -Algorithm SHA256

Windows 7 / 8.1 (Legacy): отдельные сборки MSKTerm-0.1.21-Windows-Legacy-x64.exe и MSKTerm-0.1.21-Windows-Legacy-x86.exe.

Linux (x86_64): mskterm_0.1.21_amd64.deb (Debian/Ubuntu):

sudo apt install ./mskterm_0.1.21_amd64.deb

При первом запуске придумайте мастер-пароль: им шифруется хранилище подключений, паролей, ключей и заметок. Хранилище, .mskvault и .msktx переносятся между Windows и Linux.

Системные требования: Windows 10/11 x64 (основная сборка), Windows 7/8.1 x64 или x86 (Legacy), либо Linux x86_64 (проверено на Debian 12/13 и Ubuntu 26.10). GPU с Vulkan/OpenGL (на современных Windows также DirectX 12). На Linux окно работает в нативном Wayland.

Где хранятся данные: Windows — %APPDATA%\SSHClient\config; Linux — обычно ~/.config/SSHClient. Чтобы держать данные в другом месте, задайте SSHCLIENT_CONFIG_DIR.

Windows: файл не подписан, SmartScreen может предупредить при первом запуске. Сверьте SHA-256 и нажмите «Подробнее → Выполнить в любом случае».

Возможности

1. Защищённое хранилище и мастер-пароль

Экран разблокировки

Пароли, параметры подключений, приватные SSH-ключи и защищённые заметки хранятся в одном зашифрованном файле vault.bin.

Компонент Реализация
Шифрование XChaCha20-Poly1305
Вывод ключа из мастер-пароля Argon2id
Память Argon2id по умолчанию 64 МиБ
Число проходов 3
Случайная соль 16 байт
Nonce 24 байта
Проверка целостности Аутентифицированное шифрование AEAD
  • Мастер-пароль запрашивается при запуске; кнопка с замком в правом верхнем углу блокирует хранилище в любой момент.
  • По желанию мастер-пароль можно запомнить в диспетчере учётных данных Windows — тогда хранилище открывается без ввода пароля на этом компьютере.
  • Смена мастер-пароля в настройках. Если запись нового хранилища не удалась, старый пароль продолжает работать.
  • Ключ истории редактора хранится внутри хранилища отдельно, поэтому смена мастер-пароля не уничтожает историю версий.
  • Если мастер-пароль забыт, восстановить данные невозможно — кнопка «Забыли пароль?» предлагает удалить хранилище и начать заново.

Важно: шифрование не отменяет необходимость использовать стойкий мастер-пароль и защищать сам компьютер. Независимый криптографический аудит не проводился.

2. SSH-клиент

  • Подключение к SSH-серверам с аутентификацией по паролю, приватному ключу или через SSH-агент.
  • Ключи — из зашифрованного хранилища или из файла на диске; поддерживаются ключи, защищённые паролем.
  • Поддержка Windows OpenSSH Authentication Agent, PuTTY Pageant и SSH_AUTH_SOCK.
  • Jump hosts / bastion hosts: подключение через промежуточный сервер по принципу ssh -J, включая цепочки хостов.
  • Agent forwarding (ssh -A) для сценариев, где удалённому серверу нужен доступ к ключам локального агента.
  • Проверка отпечатка ключа сервера: отдельное подтверждение нового ключа и предупреждение, если ключ изменился.
  • Несколько сессий во вкладках; хосты сгруппированы, есть быстрый поиск по имени, адресу и описанию.
  • Отключение зависшей сессии срабатывает сразу, даже если сервер перестал отвечать.
  • Автопереподключение SSH: при обрыве связи вкладка остаётся открытой и повторяет подключение с нарастающей паузой (1→2→5→10→30 с). Можно переподключить сразу, остановить автоповтор или явно отключить без повторов. Enter в закрытой/ожидающей вкладке тоже запускает переподключение.

Подтверждение ключа сервера

Редактор подключения. Имя, адрес и порт, логин, способ входа (пароль / SSH-ключ / агент), пароль для sudo, ключ из хранилища или файла, jump-хост, agent forwarding, режим «файлы и редактор через sudo», группа и описание. Кнопка «Сохранить и подключиться» сразу открывает сессию.

Редактор SSH-подключения с jump-хостом

Контекстное меню хоста (правая кнопка мыши): подключиться, редактировать, настроить вход по ключу, дублировать, экспортировать в файл, скопировать адрес, удалить.

Контекстное меню хоста

3. Терминал с ANSI/VT100

Терминал

  • Полноценная эмуляция терминала: цвета ANSI, 256-цветная палитра и RGB, псевдографика для рамок и интерфейсов текстовых программ (mc, htop, nano и т. п.).
  • Прокрутка истории — до 10 000 строк; выделение мышью и копирование.
  • Ctrl+C копирует выделенный текст, а без выделения отправляет прерывание ^C; Ctrl+V — вставка. Есть и кнопки «Копировать» / «Вставить» на панели.
  • Вставка с учётом режима bracketed paste — многострочный текст не выполняется построчно в оболочке.
  • Поддержка мыши в терминальных приложениях (mouse reporting).
  • Изменение размера шрифта (A− / A+); размер терминала подстраивается под окно.

Практический сценарий: открыть SSH-сессию, поработать в shell и тут же переключиться на вкладку «Файлы» или «Редактор» того же сервера — без повторного подключения.

4. COM / Serial Terminal

Для USB-UART адаптеров, консолей маршрутизаторов, контроллеров, микроконтроллеров и другого оборудования с последовательным интерфейсом.

Настройки COM-подключения

  • Список COM-портов с ручным обновлением; сохранённый порт, которого сейчас нет в системе, помечается «не подключён».
  • Произвольная скорость передачи и готовые шаблоны: Cisco/консоль 9600, Arduino/ESP 115200, U-Boot 115200.
  • Биты данных (5–8), чётность (нет / нечёт / чёт), стоп-биты (1 / 2).
  • Управление потоком: нет, RTS/CTS, XON/XOFF.
  • Состояние линий DTR и RTS при открытии порта — например, DTR можно выключить, чтобы не перезагружать Arduino/ESP при подключении.
  • Во время сессии: переключение DTR / RTS, индикаторы CTS / DSR / CD / RI, отправка сигнала BREAK.
  • Локальное эхо, окончание строки при Enter (CR, LF, CRLF), преобразование входящих LF в CR LF.

Живучая COM-сессия. Если USB-UART адаптер извлечён, устройство перезагрузилось или порт временно занят, вкладка не закрывается и ждёт, пока снова появится порт с тем же именем, после чего переоткрывает его. Ошибки управления линиями показываются, а не обрывают сессию; программа сообщает, если набранный ввод пришлось отбросить. Если порт занят другой программой, MSKTerm пытается показать, какой именно процесс его удерживает.

Переподключение ориентируется на имя COM-порта, а не на USB VID/PID или серийный номер адаптера. Если после переподключения Windows выдала адаптеру другой номер порта, выберите его в настройках подключения.

5. Двухпанельный файловый менеджер SFTP

Файловый менеджер

Классический двухпанельный файловый менеджер: слева — компьютер, справа — сервер.

  • Навигация по каталогам, ввод пути вручную, кнопка «Диски» для выбора локального диска, переход в домашнюю папку.
  • Сортировка по имени, размеру и дате изменения; папки всегда сверху.
  • Передача файлов и каталогов в обе стороны, копирование и перемещение.
  • Drag & Drop файлов из Проводника в окно — загрузка в текущую папку сервера.
  • Конфликты имён: пропустить существующие файлы или перезаписать.
  • Фоновые операции с прогрессом и отменой на панели «Операции».
  • Локальные файлы удаляются в корзину Windows.
  • Режим sudo: файлы сервера читаются и записываются с правами root (нужны права sudo у пользователя).
  • Права доступа (chmod): из контекстного меню — восьмеричный режим (например 644, 755) и флажки rwx для владельца/группы/прочих; опционально рекурсивно для каталогов (симлинки пропускаются).
  • Σ Размер (Alt+Enter / контекстное меню): расчёт размера выделенных файлов и папок — отдельные размеры, сумма, число файлов/папок, пропуски и ошибки. На сервере сначала быстрый обход по SSH одним запросом; при недоступности — fallback на SFTP (в т.ч. с sudo). Можно отменить и увидеть частичный результат. Симлинки и особые файлы пропускаются; на диске занятое место может отличаться от суммы логических размеров.
  • Контекстное меню файлов, итоги по выделению и по папке в строке состояния.

Горячие клавиши:

Клавиша Действие
Tab Переключить панель
Insert / Пробел Отметить файл (Insert — с переходом вниз)
Shift+↑↓, Ctrl+A, Esc Выделить диапазон, выделить всё, снять выделение
Enter / F3 Открыть папку или файл
Backspace Папка выше
F2 Переименовать
F4 Редактировать во встроенном редакторе
F5 / F6 Копировать / переместить на другую панель
F7 Создать папку
F8 / Delete Удалить
Alt+F5 / Alt+F9 Создать архив / распаковать на сервере
Ctrl+R Обновить панель

Если окно узкое, подписи кнопок нижней панели автоматически сокращаются, а полное название с клавишей видно во всплывающей подсказке.

6. Работа с архивами прямо на сервере

Создание архива с датой и временем в имени

MSKTerm проверяет, какие архиваторы установлены на сервере, запоминает результат и предлагает только доступные операции создания и распаковки. Форматы:

ZIP · TAR · TAR.GZ · TAR.BZ2 · TAR.XZ · TAR.ZST · 7Z · RAR

  • Выбор формата, имени и папки для архива; опция замены существующего архива.
  • Дата и время в имени архива — флажок добавляет к имени метку вида _2026-10-15_18-57-00, удобно для резервных копий: архивы сортируются по времени.
  • Набор доступных форматов зависит от программ на сервере (tar, gzip, bzip2, xz, zstd, zip, unzip, 7z, rar и др.); проверку можно повторить кнопкой.
  • Упаковка и распаковка идут в фоне, их можно отменить.

Панель операций

Преимущество: чтобы упаковать каталог или логи, не нужно сначала скачивать их на компьютер.

7. Встроенный редактор файлов с историей версий

Редактор с поиском

  • Редактирование файлов сервера (F4 в файловом менеджере) и локальных файлов; несколько файлов во вкладках.
  • Подсветка синтаксиса: около 220 грамматик (SH/Bash, JSON, YAML, TOML, INI, Python, PHP, JS/TS, HTML, CSS, SQL, PowerShell, Rust и др.), автоопределение по расширению, имени, пути и #!, ручной выбор с поиском и режим «Обычный текст». Грамматики встроены, без скачивания; работает вместе с поиском, разбор в фоне с кешем и лимитами для больших файлов.
  • Поиск с учётом регистра и без, замена (Ctrl+F, Ctrl+H), переход к строке (Ctrl+G), Undo/Redo, сохранение Ctrl+S.
  • Перенос строк, размер шрифта, номера строк; в строке состояния — позиция курсора, окончание строк, кодировка и размер.
  • «± Изменения» — сравнение текущего текста с сохранённым (diff); «Вернуть сохранённое» — отменить все правки; «Перечитать» — загрузить файл заново.
  • Обнаружение внешнего изменения файла: если файл на сервере поменяли после открытия, MSKTerm предупредит, а не перезапишет чужие правки молча.
  • Зашифрованная локальная история: до 60 версий на файл — прежняя версия при каждом сохранении, сохранённая версия и черновики. Любую версию можно сравнить с текущим текстом или восстановить.
  • Опционально — .bak рядом с файлом на сервере перед первым сохранением.
  • Тип окончания строк (LF / CRLF) и UTF-8 BOM сохраняются как были.
  • Файлы не в UTF-8 открываются только для чтения, чтобы не повредить данные.
  • Размер редактируемого файла — до 5 МиБ.

Сравнение с сохранённой версией

История версий

.bak рядом с конфигурацией иногда может быть прочитан сервисом как дополнительный конфигурационный файл. Для каталогов вроде conf.d или sites-enabled эту опцию следует применять осознанно.

8. Управление SSH-ключами

Менеджер SSH-ключей

  • Генерация Ed25519 (рекомендуется) и RSA 4096 (для старых серверов).
  • Импорт приватных ключей из файла или из буфера обмена: OpenSSH, PEM и PuTTY .ppk, в том числе защищённых паролем.
  • Ключи хранятся только внутри зашифрованного хранилища.
  • Отпечаток SHA-256 и список хостов, которые используют ключ.
  • Копирование открытого ключа (строка для authorized_keys) одной кнопкой; экспорт приватного ключа в формате OpenSSH, по желанию с паролем.
  • Кнопка «Установить на хост…» прямо из менеджера ключей.

Мастер настройки входа по ключу (из контекстного меню хоста или менеджера ключей): генерирует новый ключ или берёт существующий, добавляет открытый ключ в ~/.ssh/authorized_keys, проверяет вход по нему и, по выбору, переключает сервер на вход только по ключу — с проверкой конфигурации sshd и попыткой автоматического отката при неудаче.

Мастер настройки входа по ключу

Изменение sshd_config — административная операция. Нужны права root/sudo, а на критичных серверах разумно сохранять независимый резервный способ доступа.

9. Защищённые заметки

Карточки на главном экране рядом с подключениями: текст, ссылка на сайт, логин, пароль и SSH-ключ в одном месте под мастер-паролем.

  • Создание, редактирование, поиск и удаление с подтверждением; при ошибке сохранения черновик остаётся доступен.
  • Логин, пароль и ключ скрыты по умолчанию; просмотр и копирование — отдельными кнопками. Поля снова скрываются при потере фокуса окна.
  • Скопированное значение очищается из буфера через 30 секунд, если содержимое буфера не менялось.
  • Бейджи «Текст», «Ссылка», «Логин», «Пароль», «SSH-ключ» показывают заполненные поля без раскрытия содержимого; HTTP/HTTPS-ссылки открываются из заметки.

После появления заметок хранилище использует формат MSKTerm 0.1.17+. Файлы обмена с заметками тоже требуют 0.1.17+.

10. Резервное копирование, импорт и экспорт

Резервная копия хранилища .mskvault: полный снимок vault (подключения, ключи, заметки и защищённые настройки), без внешних файлов и отдельной истории редактора.

Зашифрованный обмен .msktx (меню «Импорт/экспорт»):

Экспорт подключений

  • Экспорт всех подключений или выбранных — SSH и COM; отдельный хост — из контекстного меню.
  • Выборочный экспорт заметок (в том числе без подключений) и экспорт одной заметки с карточки.
  • Используемые jump-хосты и ключи добавляются автоматически; при желании — все ключи хранилища.
  • Файл шифруется мастер-паролем хранилища или отдельным паролем.
  • При импорте — предпросмотр и выборочный импорт подключений, ключей и заметок. Существующие записи не перезаписываются; совпадение можно добавить отдельной копией. При ошибке записи прежние данные сохраняются.

Импорт из WinSCP:

  • Чтение сохранённых сайтов из реестра Windows или WinSCP.ini.
  • Перенос SSH-хостов, адресов, портов, пользователей, папок (как групп) и сохранённых паролей.
  • Импорт связанных приватных ключей (в том числе .ppk) с повторным использованием уже имеющихся в хранилище.
  • Предпросмотр записей и пометка дубликатов.
  • Сайты FTP, WebDAV и S3 помечаются как неподдерживаемые и не превращаются в SSH-подключения.

Ограничения WinSCP: если в WinSCP включён мастер-пароль, его нужно временно отключить (WinSCP → Настройки → Безопасность) — иначе сохранённые пароли не прочитать. Туннели WinSCP не переносятся: такие хосты помечаются в предпросмотре, jump-хост можно настроить вручную.

11. Интерфейс и языки

Настройки

  • Тёмная тема, вкладки подключений с рабочими областями «Терминал», «Файлы», «Редактор» (для COM — «COM»).
  • Группировка хостов, поиск, счётчик сессий и уведомления в строке состояния.
  • Русский и английский интерфейс. При первом запуске язык выбирается по языку Windows; переключить можно на экране разблокировки или в настройках, без перезапуска.
  • Свой язык: в настройках сохраните шаблон перевода, переведите строки и положите файл *.json в папку языков (кнопка «Папка языков» открывает её). Язык появится в списке. Непереведённые строки показываются по-английски. Файлы языков также читаются из папки lang рядом с mskterm.exe.

Английский интерфейс

12. ИИ-помощник (свой API-ключ)

Опциональный помощник во вкладке «ИИ» активной SSH-сессии. Ключ и настройки хранятся в зашифрованном хранилище; перед отправкой в облако маскируются секреты и ключи; хосты/e-mail — по желанию; IP по умолчанию не маскируются (удобно для диагностики, галка в настройках).

  • Bring your own key: OpenAI, Anthropic, Google Gemini, xAI Grok, DeepSeek, Mistral, Alibaba Qwen, OpenRouter или любой OpenAI-compatible endpoint.
  • Режимы Наблюдатель / Помощник / Агент — от советов по экрану до пошаговой диагностики на сервере.
  • В режиме Агента — расширенный набор инструментов (18, включая систему, процессы, каталоги, поиск по файлам, журнал, сеть/DNS/TCP, конфиги служб); шаги видны справа. Предложение правок текстовых файлов: diff, применение после подтверждения, проверка конфликтов, версии в зашифрованной истории.
  • Обмен с моделями: OpenAI Responses API, нативные tool calls для OpenAI-compatible и Anthropic; сохранение задачи и результатов между шагами; повтор после ошибки API без перезапуска уже выполненных действий; выбор уровня рассуждения для поддерживающих моделей.
  • Контекст: выделенный текст терминала, экран, файл из редактора; уточняющие вопросы учитывают историю диалога (только в этой сессии, на диск не пишется).

Ответы генерирует сторонняя модель и могут содержать ошибки. Команды и правки конфигураций проверяйте сами перед запуском. ИИ не «логинится» в облако MSKTerm — уходит только то, что вы отправили своим ключом.

Чем MSKTerm удобен в работе

Типичная задача В MSKTerm
Подключиться к серверу SSH-сессия из списка сохранённых хостов
Зайти через bastion Цепочка SSH jump-хостов
Связь оборвалась Автопереподключение SSH с backoff
Подключиться к UART-консоли COM-терминал с DTR/RTS, BREAK и переподключением
Скопировать конфиг Двухпанельный SFTP-менеджер с горячими клавишами
Сменить права на файле chmod из контекстного меню
Исправить конфиг и откатить правки Встроенный редактор, diff и зашифрованная история
Отредактировать файл, принадлежащий root Файлы и редактор через sudo
Сделать резервную копию на сервере Архив с датой и временем в имени, без скачивания
Узнать размер папки на сервере Σ Размер / Alt+Enter (быстрый SSH, fallback SFTP)
Разобрать ошибку службы / лог ИИ-агент: расширенные инструменты и правки с diff
Настроить вход по ключу Генерация, установка, проверка входа, настройка sshd
Сохранить логин/пароль/ссылку Защищённые заметки на главном экране
Перенести подключения и заметки .msktx / резервная копия .mskvault
Перейти с WinSCP Импорт сохранённых сайтов и ключей

Известные ограничения

  • Готовые сборки — Windows 10/11 x64, Windows 7/8.1 Legacy (x64 и x86) и Linux x86_64.
  • Переподключение COM ориентируется на прежнее имя порта, а не на аппаратный идентификатор адаптера.
  • Автопереподключение SSH не запускается после явного «Отключить»; при неверном пароле цикл можно остановить кнопкой.
  • Редактор предназначен для текстовых файлов UTF-8 размером до 5 МиБ.
  • Для работы с файлами через sudo нужны права sudo и установленный sftp-server на сервере.
  • Архивирование требует подходящих утилит на сервере.
  • Импорт WinSCP не переносит туннели и не работает при включённом мастер-пароле WinSCP.
  • Эмуляция терминала покрывает распространённые программы, но не каждую возможную управляющую последовательность.
  • ИИ требует ваш API-ключ и сеть до выбранного провайдера; уровень рассуждения выбирается в настройках для поддерживающих моделей.
  • Резервная копия .mskvault не включает внешние файлы и отдельную историю редактора.

Лицензия

MSKTerm распространяется бесплатно только для некоммерческого использования — личного, учебного, домашнего, для некоммерческих проектов.

  • Использование в коммерческих организациях и для извлечения прибыли — только по согласованию с правообладателем.
  • Запрещены продажа программы, распространение изменённых версий, декомпиляция и модификация исполняемого файла.
  • Программа предоставляется «как есть», без каких-либо гарантий. Автор не несёт ответственности за возможный ущерб, потерю данных или последствия изменения настроек серверов и оборудования.
  • Исходный код не публикуется.

Полный текст — в файле LICENSE. По вопросам коммерческой лицензии, ошибок и предложений — GitHub Issues.

Бренд

MSKTerm — проект в экосистеме MSKSRV.


MSKTerm — SSH, Serial & Files. Everything connected.

© 2026 MSKSRV Все права защищены.

About

MSKTerm — SSH & Serial terminal, SFTP file manager, editor and encrypted vault for Windows. Free for non-commercial use.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors