Repository navigation
Releases: Bakunity/RDP
Release list
Hermes RDP v1.3.0
Bakunity RDP v1.3.0 — Trusted RDP certificates
Bakunity RDP v1.3.0 добавляет полноценный trusted-certificate lifecycle для Windows RDP listener: от получения публичного IP-сертификата на Bakunity server до автоматической установки, проверки и ротации на Windows.
Главное
- опциональный Let’s Encrypt short-lived certificate для публичного IPv4 Bakunity server;
- Hermes-owned renewal service/timer и non-secret certificate state;
- authenticated доставка certificate package только зарегистрированному Windows device;
- отдельный LocalSystem rotation worker вне основного 3-секундного Agent loop;
- автоматический CUSTOM certificate binding Windows
RDP-Tcpи восстановление после local drift; - Fresh Install, transactional Update и Repair автоматически управляют certificate companion из одного immutable source SHA;
- normal Uninstall удаляет основной Agent и certificate-rotation runtime;
- исправлен rollback между default Windows self-signed state и explicit CUSTOM binding;
- сохранены Windows PowerShell 5.1, Win10 x64/x86 Sysnative compatibility и Defender coexistence без exclusions;
- README, public site, operations/security docs и release-history workflow синхронизированы с принятым behavior.
Проверено
- production public-IP certificate issuance, chain/key validation и renewal smoke;
- реальный внешний Microsoft Remote Desktop с trusted certificate без прежнего self-signed warning;
- automatic recovery после controlled listener drift;
- live Update и Repair с сохранением device identity, keys,
known_hostsи RDP port; - чистый Windows 10 Pro / PowerShell 5.1 / Defender-enabled Fresh Install и normal Uninstall;
- Linux full release checks и Windows PowerShell 5.1 CI.
Breaking changes / recommendation
Breaking changes относительно v1.2.1 не вводятся. Trusted RDP certificate lifecycle опционален; для него нужен глобально маршрутизируемый public IPv4 и доступный TCP 80 для ACME HTTP-01.
После публикации v1.3.0 рекомендуется для новых install/update вместо v1.2.1.
Релиз: https://github.com/bakunity/RDP/releases/tag/v1.3.0
Полная инженерная история: v1.3.0-full.md
Hermes RDP v1.2.1
Bakunity RDP v1.2.1 — Recommended stabilization release
Release: https://github.com/bakunity/RDP/releases/tag/v1.2.1
v1.2.1 — рекомендуемый stable release линии v1.2.x: полный согласованный tree большой stabilization-работы + исправление release-packaging ошибки v1.2.0.
Между v1.1.0 и полным v1.2.1 — 283 commit'а с изменениями Windows Agent/installer/update/repair, Linux controller/API/DB/tunnel, Telegram UX, документации, сайта, release automation и regression/soak tests.
Главное
- Windows/Linux reboot и reconnect recovery;
- multi-device режим и one-device failure isolation;
- transactional server + Windows update с automatic rollback;
- Repair существующего клиента без re-pair/rekey;
- Win10 x64 + 32-bit PowerShell через
Sysnative; - Windows Server 2019 support;
- исправлены stalled TLS API, OFF/ON reconciliation deadlock и stale command state;
- устранены RDP micro-freeze из telemetry fast path;
- Telegram OFF/ON/RESTART, auto-refresh, mobile UX, Repair и new pairing code;
- сохранена per-device Ed25519 security model без Defender exclusions.
Проверено live
- external Microsoft RDP;
- Windows + Linux reboot recovery;
- несколько независимых Windows devices одновременно;
- two-session RDP + failure isolation;
- server/client update success + forced rollback;
- Repair success + rollback;
- Defender coexistence;
- Win10 x86 PowerShell/Sysnative и Windows Server 2019.
Почему не v1.2.0
v1.2.0 был опубликован не на полном validated release tree из-за ошибки release workflow. Исторический tag не переписывался; v1.2.1 содержит полный согласованный snapshot этой stabilization baseline.
Полная инженерная история: v1.2.1-full.md
Подробные проверенные сценарии: VALIDATED_SCENARIOS.md
Hermes RDP v1.2.0
Bakunity RDP v1.2.0 — Stabilization
Большой стабилизационный релиз после перехода Bakunity RDP на системный OpenSSH.
Важно: исторический tag
v1.2.0был опубликован с release-packaging ошибкой и не содержит полный финальный tree. Для install/update используйтеv1.2.1.
Главное
- добавлен Repair существующего Windows-клиента без fresh pairing и смены identity;
- server и Windows update стали transactional с backup, health-check и automatic rollback;
- исправлена работа Windows 10 x64 из 32-bit PowerShell через
Sysnative+ native OpenSSH; - добавлена и live-проверена поддержка Windows Server 2019;
- закрыты soak-time проблемы: stalled TLS API, OFF/ON reconciliation deadlock и stale pending commands;
- устранены заметные RDP micro-freeze из-за тяжёлого telemetry fast path;
- подтверждены multi-device режим, failure isolation, reboot/reconnect recovery и безопасный port reuse;
- Telegram получил auto-refresh состояния, улучшенный mobile layout, Repair и Новый код.
Проверено
- external Microsoft RDP;
- Windows + Linux reboot recovery;
- несколько Windows-ПК и два RDP-сеанса одновременно;
- one-device failure isolation;
- server/client update success + rollback;
- Repair success + rollback;
- Defender real-time coexistence;
- Windows 10 x64/x86 PowerShell и Windows Server 2019.
Также существенно обновлены README, Architecture, install/operations/security/troubleshooting docs, Testing A-to-Z, validated scenarios, public site и regression/soak tests.
Полная инженерная история: v1.2.0-full.md
Подробные проверенные сценарии: VALIDATED_SCENARIOS.md
Hermes RDP v1.1.0
Bakunity RDP v1.1.0
Крупный релиз: транспорт полностью переведён с FRP на системный OpenSSH.
Главное
frpsиfrpc.exeудалены из текущей архитектуры;- Windows использует встроенные
ssh.exeиssh-keygen.exe; - отдельный Ed25519-ключ создаётся для каждого ПК;
- private key никогда не передаётся серверу;
- отдельный
sshdна порту туннелей не предоставляет shell или SFTP; permitlistenограничивает каждый ключ одним назначенным RDP-портом;- SSH host key доставляется через pinned HTTPS и сохраняется в отдельном
known_hosts; - OFF и DELETE немедленно закрывают активный listener;
- удаление устройства освобождает порт для повторного использования;
- pairing и регистрация стали атомарными, поэтому ошибка не оставляет использованный код без устройства;
- установщик Windows больше не требует Defender exclusions.
Миграция
Переход с v1.0.x выполняется серверным установщиком с --migrate. Старые устройства необходимо добавить заново, чтобы они получили индивидуальные SSH keys.
Проверки
- Python unit tests для pairing, key validation, authorization, revoke и port reuse;
- статические architecture tests запрещают возврат FRP в текущие installer/agent файлы;
- Windows PowerShell 5.1 parsing и runtime certificate-pinning test;
- полный Linux release check.
Ссылки
Hermes RDP v1.0.7
Bakunity RDP v1.0.7
Hotfix HTTPS certificate pinning для Windows PowerShell 5.1.
Исправлено
HttpClientHandler.ServerCertificateCustomValidationCallback больше не использует PowerShell scriptblock. Ранее .NET вызывал этот callback на фоновом потоке без PowerShell runspace, из-за чего корректный HTTPS-запрос завершался PSInvalidOperationException и внешней HttpRequestException.
Проверка SHA-256 fingerprint перенесена в статический C# callback. Сертификат сервера по-прежнему принимается только при точном совпадении fingerprint.
Проверки
- Windows runtime test создаёт реальный самоподписанный сертификат;
- правильный SHA-256 fingerprint принимается;
- неправильный fingerprint отклоняется;
- Linux release checks и PowerShell 5.1 parsing проходят.
Совместимость
- API, SQLite registry, pairing contract, FRP и стандартные порты не изменены;
- Windows PowerShell 5.1 поддерживается.
Ссылки
Hermes RDP v1.0.6
Bakunity RDP v1.0.6
Hotfix Telegram bootstrap для Windows PowerShell 5.1.
Исправлено
При загрузке install-client.ps1 через Invoke-RestMethod UTF-8 BOM мог сохраняться в строке как символ U+FEFF. Из-за этого ScriptBlock.Create() не распознавал начальный param(...) и выдавал ошибку на параметре ApiPort.
Telegram-команда теперь удаляет BOM перед созданием script block. Команда остаётся единым компактным копируемым блоком.
Проверки
- regression tests проверяют наличие
TrimStart([char]0xFEFF)и отсутствие старого прямого bootstrap; - Windows PowerShell 5.1 CI продолжает разбирать все
.ps1файлы; - полный release check проходит на Linux.
Совместимость
- API, SQLite registry, pairing contract, FRP и Windows agent не изменены;
- стандартные порты не изменены.
Ссылки
Hermes RDP v1.0.5
Bakunity RDP v1.0.5
UX-патч Telegram-команды и серверного обновления.
Изменено
PowerShell-команда добавления Windows-ПК остаётся единым копируемым блоком, но теперь использует несколько коротких строк и splatting. Telegram больше не растягивает панель из-за одной длинной строки, а команда не зависит от хрупких обратных апострофов.
Серверный установщик теперь явно перезапускает уже работающие службы после обновления. update-server.sh загружает исходники через endpoint, совместимый и с ветками, и с release-тегами.
Совместимость
- API, SQLite registry, pairing contract, FRP и Windows agent не изменены;
- стандартные порты не изменены.
Ссылки
Hermes RDP v1.0.4
Bakunity RDP v1.0.4
UX-патч Telegram-панели добавления Windows-ПК.
Изменено
PowerShell-команда установки теперь выводится единым моноширинным блоком. В Telegram её можно скопировать целиком одним нажатием, без ручного выделения длинной строки.
Команда HTML-экранируется, поэтому специальные символы внутри URL и PowerShell не ломают разметку сообщения.
Совместимость
- серверный API и Windows agent не изменены;
- схема SQLite и pairing contract не изменены;
- обновление затрагивает только Telegram UI;
- стандартные порты не изменены.
Ссылки
Hermes RDP v1.0.3
Bakunity RDP v1.0.3
Hotfix чистой установки серверной части.
Исправлено
На чистом сервере /etc/frp/frps.toml ещё отсутствует. В v1.0.2 установщик пытался прочитать из него legacy token без проверки существования файла. При включённом set -o pipefail команда sed завершалась с кодом 2, поэтому установка останавливалась после загрузки FRP и до создания systemd-служб.
В v1.0.3 legacy-конфиг читается только тогда, когда файл действительно существует. При чистой установке создаётся новый случайный FRP token.
Совместимость
- повторный запуск после частичной установки
v1.0.2безопасен; - уже созданный
/etc/hermes-rdp/frp-tokenповторно не генерируется; - API, SQLite registry, Windows agent и стандартные порты не изменены.
Ссылки
Hermes RDP v1.0.2
Bakunity RDP v1.0.2
Hotfix стабильного серверного установщика.
Исправлено
В v1.0.1 скачанный install-server.sh пытался получить полный архив проекта по адресу для Git-веток:
archive/refs/heads/v1.0.1.tar.gz
Поскольку v1.0.1 является тегом, GitHub возвращал HTTP 404 до создания конфигурации и запуска сервисов.
В v1.0.2 используется универсальная загрузка через codeload.github.com, которая одинаково поддерживает стабильные теги и ветки разработки.
Совместимость
- серверный API и Windows agent обратно совместимы с
v1.0.1; - схема SQLite и pairing contract не изменены;
- стандартные порты не изменены;
- повторный запуск после ранней ошибки
v1.0.1безопасен на чистом сервере.