Безопасность

Безопасность и прозрачность.

У Termal OS ключи от ваших серверов, поэтому доверие здесь и есть продукт. Вот что именно он делает с вашими учётными данными и вашими данными вообще — и что вы можете проверить самостоятельно.

Модель, в одну строку

Всё локально и без агента. Termal OS — настольное приложение, которое работает на вашем компьютере и подключается к серверам по обычному SSH. Никакого облака посередине: учётные данные ваших серверов шифруются локально и нам не отправляются, а на серверах ничего не устанавливается. Аккаунт termalos.com нужен только для выпуска и проверки лицензии.

Ничего из этого не рекламная скороговорка: каждое утверждение ниже соответствует тому, как приложение работает на самом деле, и тому, что вы можете подтвердить сами (посмотрите трафик, проверьте свои серверы, прочитайте пакеты).

Ваши учётные данные не покидают компьютер

Пароли SSH, закрытые ключи и парольные фразы к ним — а также ключ API вашего поставщика ИИ — шифруются при хранении алгоритмом AES-256-GCM, в локальной базе SQLite, которая лежит на вашем компьютере. Ничего из этого не хранится на наших серверах и не передаётся им.

Ключ шифрования работает в одном из двух режимов:

  • По умолчанию (ключ устройства). Случайный 256-битный ключ создаётся при первом запуске приложения, записывается в вашу папку пользовательских данных с правами только для владельца и никогда не передаётся. Он шифрует хранилище учётных данных на этой машине.
  • Мастер-пароль (по желанию). Если его включить, ключ выводится из вашего пароля алгоритмом scrypt и держится только в памяти — на диск он не попадает никогда. Приложение стартует заблокированным и остаётся таким, пока вы его не разблокируете.

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

Что действительно уходит с вашего компьютера

В сторону нашей инфраструктуры приложение делает ровно три вида запросов — и ничего больше:

  • Вход в аккаунт — адрес почты и пароль, отправляются один раз при входе.
  • Обновление лицензии — примерно раз в сутки: токен сеанса плюс идентификатор установки, название вашей ОС и версия приложения. Сервер возвращает криптографически подписанный токен лицензии (RSA-2048 / SHA-256), который приложение умеет проверять офлайн до 14 дней.
  • Проверка версии — обычное чтение небольшого файла версий на нашей CDN, чтобы сообщить вам о новой сборке. Никаких персональных данных не отправляется.

Идентификатор установки — случайный идентификатор, который хранится локально, а не отпечаток железа вашей машины. Всё остальное, с чем общается приложение, — ваше: ваши серверы (по SSH) и, если вы включите помощника, ваш собственный поставщик ИИ.

Никакой телеметрии. В Termal OS нет ни аналитики, ни отправки отчётов о сбоях, ни отслеживания использования. Ни метрики серверов, ни имена хостов, ни команды никогда не покидают ваш компьютер.

ИИ-помощник: ваш ключ, ваш поставщик

Помощник по умолчанию выключен. Когда вы его включаете, ваш вопрос и компактный снимок состояния сервера уходят напрямую тому поставщику ИИ, которого вы выбрали (Anthropic или любая точка доступа, совместимая с OpenAI), с авторизацией по вашему собственному ключу API. Нас в этой цепочке нет, и мы ничего не перепродаём.

Чтобы вы точно знали, чем делитесь: в этот снимок входят операционная система и обнаруженные среды выполнения, метрики в реальном времени, названия размещённых сайтов и активные оповещения — плюс ваши последние сообщения в этом разговоре. Учётных данных там нет.

И ничего не запускается само: помощник предлагает команды, каждую с кнопкой Выполнить, и команда уходит по SSH только тогда, когда вы нажали. Системная инструкция направляет его к диагностике без изменений и заставляет предупреждать о любой разрушительной команде.

Без агента по замыслу

Termal OS не устанавливает на ваши серверы ничего: ни агента, ни демона, ни фонового процесса, ни задания cron. Мониторинг работает за счёт обычных команд оболочки только на чтение, выполняемых по SSH (тех самых, что набрали бы вы: ps, df, free…). Единственное, что вообще когда-либо записывается на сервер, — это передача файлов, которую вы сами начали в файловом менеджере. Root не нужен: приложение работает с правами вашего же пользователя SSH.

Локальный сервер — не открытая дверь

Внутри приложение поднимает небольшой сервер на вашей же машине. Его защищает секрет, который создаётся заново при каждом запуске и передаётся только настольному приложению: любой запрос без него — из другого браузера или от другого процесса на вашем компьютере — отклоняется. Локальный сервер существует для приложения, а не для сети.

Обновления и подпись кода

Приложение сообщает прямо в интерфейсе, что вышла новая версия, а устанавливаете вы её тогда, когда вам удобно. Тихих обновлений нет.

Скажем прямо: сборки для Windows и macOS пока не подписаны — и именно поэтому автоматическое обновление бинарников на этих платформах намеренно отключено. Прислать неподписанное автообновление в приложение, которое хранит ваши учётные данные SSH, — риск, на который мы не пойдём; сборки, подписанные или нет, вы скачиваете с этого сайта сознательно и обновляете по собственному решению. В Linux Snap проходит проверку Snap Store и работает в песочнице.

Сертификаты для подписи кода стоят денег, которых у проекта пока нет. Те, кто его поддерживает, это меняют: любое пожертвование открывает лицензию Lifetime Pro, и именно оно оплачивает подпись и выход в магазины. Вот честная причина, по которой эта просьба существует.

Закрытый исходный код, честно

Termal OS — платный проприетарный продукт, поэтому само приложение с закрытым исходным кодом; делать вид, что это не так, мы не станем. Что это означает, если говорить прямо:

  • Что открыто: SDK Termal Studio выпущен под лицензией MIT — см. termalos-sdk.
  • Что вы всё равно можете проверить: поставьте приложение за прокси и посмотрите его трафик — увидите только перечисленные выше запросы. Проверьте свои серверы — агента там не найдётся. Это обычный SSH, и root ему не нужен.

Доверие к закрытому приложению зарабатывается наблюдаемым поведением, а не обещанием. На этой странице описано поведение; остальное можно проверить.

Сообщить о проблеме безопасности

Что-то нашли? Сообщите, пожалуйста, приватно, а не в публичной задаче. См. нашу политику безопасности или напишите на [email protected]. Сообщениям мы рады, и на них отвечают.

Есть вопросы по любому из этих пунктов? Напишите на [email protected]: на вопросы о безопасности здесь отвечают по существу, а не отговорками.