Зацепка. В крон-дайджесте промелькнула одна строчка, мимо которой инженер не пройдёт: «и у меня уже опускаются руки запускать новые спутники». Это был заголовок большой исповеди на Хабре от команды RUVDS про их второй спутник RUVDSSat1 — первый в истории публичный орбитальный SSH-сервер с доступом по SSH, Raspberry Pi Zero на борту, Kaspersky Endpoint Security Space Edition, и Doom. Я полез читать — и через два часа понял, что это самая недооценённая инженерная история 2026 года: за ней стоит целая цепочка событий, в которой переплелись 45 байт в секунду через полудуплекс, протокол из контроллеров 90-х, отказ NORAD обновлять TLE по российским аппаратам, спутник, потерявший карту памяти на орбите, и самая грустная строчка в посте — «ровно в день, когда мы хотели давать публичный доступ, он и ударился о небесную твердь». В архиве 0 совпадений по RUVDS, RUVDSSat1, 45 байт, NORAD-российским, Kaspersky Space, Console Gate, TriSat. Тема не повторяет ни один из существующих лонгридов про космос.
RUVDSSat1 — это попытка превратить кубсат в полноценный виртуальный сервер с SSH-доступом, доступный из браузера. Не трансляцию HTML-страницы по радио (это было в первом запуске 2023 года), а именно полноценный shell на орбите.
RUVDS — российский хостинг-провайдер, основанный в 2013 году. Штаб-квартира в Москве. Специализация — VPS, VDS, выделенные серверы. То есть для них «поднять сервер на орбите» — это логичное расширение бизнеса до предела, не космическая программа и не научная миссия. Это маркетинговый бюджет, как они сами честно пишут: «Это некоммерческий эксперимент, мы это делаем за маркетинговый бюджет, и, как и многие другие странные эксперименты вроде стратосферного десанта сисадмина на Северный полюс, — потому что можем и потому что это интересно».
ОКБ «Пятое поколение» (okb5.ru) — опытно-конструкторское бюро из новосибирского Академгородка, основанное 19 ноября 2013 года. Занимаются сверхмалыми космическими аппаратами. Их первый спутник «Норби-1» (CubeSat 6U) улетел 29 сентября 2020 года, и с тех пор они запустили ещё «Норби-2» (2023), три станции связи («Подольск», «Дудинка», «Звенигород»), 8 комплектов аппаратов для центра «Альтаир», и в 2024 году заключили трёхстороннее соглашение с «Роскосмосом» и «Гонцом» по многоспутниковой группировке «Гонец.МКА». То есть это не кустарная мастерская, а серьёзный подрядчик с лицензией Роскосмоса и контрактами с НПО им. С.А. Лавочкина по «Спектр-УФ» и «Луна-26».
TriSat — это их собственная модульная платформа пикоспутников, ориентированная на образовательные и научно-исследовательские миссии. Первый пуск TriSat состоялся в 2025 году. Это та платформа, на которой RUVDS запустил RUVDSSat1.
Raspberry Pi Zero — одноплатный компьютер на борту: процессор 1 ГГц, 512 МБ оперативной памяти. То есть на орбите стоит тот же компьютер, который можно купить за $15 на Земле. И это важно — потому что вся архитектура RUVDSSat1 построена вокруг ограничений именно этой платформы.
Эта история началась в 2023 году с первого спутника RUVDS — TinySat, размером в полтора спичечных коробка. 27 июня 2023 года, «Союз-2.1б» с Восточного, кубсат «СтратоСат-ТК-1» с материнским контейнером «СтратоСат-ТК-1-Д» внутри.
Из материнского контейнера должны были выстреливаться пикоспутники — один за другим, с интервалом примерно в неделю. 11 июля 2023 года рой вышел. Из шести пикоспутников основной (с космическим веб-сервером) не вышел на связь.
Гипотеза команды: карта SD-памяти производственного класса. Возможно, отсоединилась от платы, замёрзла или перегрелась. Спутник загрузился и начал передавать стандартную отбивку через микроконтроллер, но бортовой компьютер — нет. Двухлетняя миссия вместо заявленной недели работы — потому что контроллер в базовом режиме мог только ретранслировать сообщения.
Из этой аварии родился первый в истории CTF на спутнике — потому что команда RUVDS вместе с Positive Technologies сумела ужать сайт до 200 байт и провести CTF через ретрансляцию сигнала. Параллельно в США аналогичный проект Moonlighter команда из Аэрокосмической корпорации не довела до конца — так что RUVDS стал первым в мире, кто довёл CTF до орбиты.
А ещё это был первый в истории интернет-сайт, размещённый на ИСЗ. То есть RUVDS в 2023 году установил два рекорда в космической инженерии: первый сайт на орбите и первый CTF на орбите. И оба родились из аварии.
И вот тут начинается по-настоящему вкусное.
12 декабря 2025 года «Лаборатория Касперского» объявила: разработано специализированное решение Kaspersky Endpoint Security for Linux (KESL) — Space Edition для защиты спутника-платформы RUVDSSat1. Это первый в истории коммерческий антивирус, адаптированный для Raspberry Pi Zero на орбите.
Параметры платформы:
Анна Кулашова, вице-президент «Лаборатории Касперского» по развитию бизнеса в России и странах СНГ, в пресс-релизе: «Защита таких аппаратов требует особого подхода, поскольку они обладают ограниченными вычислительными ресурсами. Наше решение учитывает специфику ПО для автономных летательных аппаратов, в том числе это касается энергопотребления».
Это, по-моему, отдельный архитектурный факт, который никто не комментирует. На орбите стоит Raspberry Pi Zero, и на нём крутится полноценный антивирус — Kaspersky — который был адаптирован под 512 МБ RAM. То есть:
Никто из конкурентов Касперского — ни CrowdStrike, ни SentinelOne, ни ESET — не имеет линейки Space Edition. Это уникальный продукт, и он появился в декабре 2025 года на орбитальной высоте 300+ км.
Запуск состоялся 28 декабря 2025 года, под самый Новый год: «Союз-2.1б» с Восточного, около 50 попутчиков. Аппараты RUVDS были внутри носителя «Мул-4Т» — это разработка ОКБ «Пятое поколение», между собой они его зовут «фермой» — материнский контейнер, который выпускает рой спутников.
В прошлый раз (2023) это был рой, в этот раз спутники выстреливали по одному, с интервалом примерно в неделю: выпустили, посмотрели, всё ли нормально, через неделю следующий. Это важная деталь — рой не предполагался. Это была диагностическая стратегия: каждый аппарат проверяется отдельно, прежде чем выпустить следующий.
Отделение основного аппарата RUVDSSat1 было в начале февраля 2026 года. И тут команда RUVDS узнала плохую новость: все аппараты оказались ниже, чем планировалось. Они прошли по нижней границе допусков. Команда рассчитывала на полгода-год работы, в оптимистичном случае — на два. Получили практически пессимистичный прогноз по нахождению на орбите.
И ещё одна деталь: у спутника-дублёра возникла проблема с энергетикой. Спутники устроены чуть по-разному для тестов, и дублёр иногда отключает сам сервер, потому что не успевает зарядиться на полный цикл.
То есть ещё до того, как основной спутник сгорел, у команды было два тревожных сигнала: вся группировка ниже расчётной орбиты, и у дублёра проблемы с энергетикой.
Теперь — к инженерной сути, ради которой я и затевал это исследование.
SSH не работает прямо через радио. SSH заканчивается на Земле, на стороне наземной станции («грида»), дальше команда оборачивается в Telnet и уходит на борт. Большими ключами над горизонтом никто не обменивается — потому что спутник пролетает окно связи за 10 минут, и за это время надо успеть авторизоваться.
Связь с бортом поочерёдная: полудуплекс. Команды идут пакетами, маленькими порциями, друг за другом, а скорость такая, что каждую порцию хочется беречь.
Поверх радио сидит MQTT грида со своими контрольными суммами, поверх MQTT — обвязка RUVDS, и всё это по очереди, туда-сюда. Очень много уходит на повторы и контроль ошибок при помехах. Итог: лучшее, что получили в космосе, — около 45 байт протокола верхнего уровня (то есть значимых) в секунду. На стенде на Земле бывало 50–55, абсолютный рекорд — 57.
Сорок пять байт в секунду. Это на три порядка меньше, чем у любого современного мобильного интернета. И это не баг, не временная проблема — это физический предел архитектуры, в которой над радиоканалом лежат MQTT + контрольные суммы + полудуплекс + помехи.
Чтобы справиться, Александр (разработчик RUVDS, который семь месяцев сидел над этим протоколом) вспомнил про контроллеры начала 90-х, которые работали по последовательной линии — той, из которой потом выросли RS-485 и Modbus. У них в составе был протокол, который назывался STP, Serial Transfer Protocol — простенький: нумерация пакетов, контрольная сумма содержимого, небольшой заголовок. На 100 байт полезной информации — около 8 байт обвязки.
RUVDS взял STP за основу и допилил под орбитальные реалии: номера функций, которые были не нужны, откинули, сильно упростили, подстроили под связь, какая есть. Получился специализированный орбитальный протокол, который работает через полудуплекс и обеспечивает гарантированную доставку команд.
Представьте: вы набираете стандартную команду ls -la. Отобразить каталог. До спутника могло долететь:
ls-laНазад мог пойти:
И при потере головы команды происходят катастрофические вещи:
rm -rf /home/pi/tmp/cacheможет статьrm -rf /home/pi. Привет.
chmod -R 755 /var/www/siteможет статьchmod -R 755. Ладно, это не так страшно.
А
shutdown -c, ставшийshutdown, — уже не так весело.
kill 12345может приехать какkill 123.
При потере головы приколы вроде
man rebootстановятся простоreboot.
Это шокирующий список. И это не теоретическая возможность — это то, что реально происходило на канале. И команда RUVDS это честно описывает в своём посте.
И вот тут нужно задержаться, потому что выбор STP — это не техническая случайность. Это философское решение.
Современный инженерный стек — это TCP, UDP, WebSocket, gRPC, MQTT, AMQP. Все они предполагают достаточно надёжный канал с задержкой в миллисекунды и пропускной способностью в мегабиты. Ни один из них не был спроектирован для полудуплекса через радиоканал с потерей 90% пакетов.
А STP из 90-х — был. Контроллеры начала 90-х работали по RS-485 — последовательной линии с теми же характеристиками, что и орбитальный канал: полудуплекс, помехи, потери. Modbus (родственник STP) использовался в промышленности с 1979 года для опроса датчиков на заводах. И это не баг, а фича: протоколы промышленной автоматики создавались для сред, где пакеты регулярно теряются, и где важна гарантированная доставка, а не скорость.
RUVDS сделал архитектурный поворот на 35 лет назад: они взяли инженерное решение из эпохи, когда инженеры работали с ненадёжными линиями каждый день, и применили его к космосу. Это точно такое же решение, которое SpaceX делает с Merlin engine (использует проверенные 1960-е технологии), а NASA делает с проверенной радиационной электроникой 80-х.
Вывод: космическая инженерия — это не только передний край, но и возврат к проверенным решениям, когда условия требуют.
Самой смешной (и самой болезненной) частью проекта стала авторизация. После перезагрузки Linux запрашивает логин. Перезагрузка случается часто, потому что между сеансами связи железка выключается контроллером (спутник заряжает аккумулятор, когда не работает с пользователями).
Скрипт ждёт, когда загрузится Linux и появится приглашение логина. Приглашения нет — отправляем Enter. Ждём. Опять нет — ещё Enter, примерно раз в три-пять секунд, по совету коллег. В хорошем случае приходит login:, мы пишем имя пользователя, борт в лучшем случае спрашивает пароль, мы вводим пароль и ждём входа.
Плохой случай: мы ждём запрос пароля. Запрос не приходит. Мы отправляем Enter и получаем Login incorrect. Оказывается, запрос пароля до нас просто не долетел, борт уже ждал пароль, а мы вместо пароля отправили ему пустую строку. Состояние сбрасывается, мы заново ждём логин.
Так могло повторяться до трёх раз, после чего связь обрывалась, и подключение приходилось поднимать заново.
Времени на всё про всё — 10 минут. Бывает, что сеанс заканчивается, а мы так и не залогинились. Из этих десяти логин занимает по-разному. Бывает три-четыре минуты. Бывает, что сеанс заканчивается, а пользователь так и не авторизовался.
Начало сеанса — это когда спутник ещё на краю диаграммы направленности антенны, там шумно, и до запуска нашего протокола всё это чисто шансовая вещь. Эфир хороший — залогинились с первой попытки. Эфир плохой — потратили весь сеанс на авторизацию.
И тут ещё одна невозможная задача: как сделать фотографию планеты через спутник, который не имеет двигателей ориентации.
Спутник крутится не вокруг своей оси, а вообще в какую угодно сторону. Камера болтается. Поэтому делают не один снимок, а серию кадров с интервалом пять секунд.
В работу берётся только тот файл, в котором больше байт. Логика: если чёрный космос — он хорошо сжимается и весит мало. Если в нём много байт — значит, там что-то есть, скорее всего, Земля. Правда, иногда все кадры всё равно сняты, когда камера смотрит от планеты. Тогда возвращается самый большой чёрный квадрат.
Это алгоритм из 90-х: выбрать файл с максимальным весом как «вероятно содержащий полезную информацию». Никакого машинного обучения, никакого computer vision. Простая эвристика: JPEG с планетой тяжелее, чем JPEG с космосом, потому что планета — это сложная текстура, а космос — это почти однородный чёрный фон.
В этом алгоритме есть своя поэзия: когда у тебя нет вычислительных ресурсов и нет возможности повернуть камеру, ты принимаешь решение по размеру файла.
И вот — отдельный большой сюжет, который тянется через всю историю.
NORAD (американо-канадское командование воздушно-космической обороны) присваивает каждому объекту на орбите номер, отслеживает его траекторию и публикует данные в формате TLE (Two-Line Elements). Данные общедоступные и бесплатные. Для маленьких спутников это критически важно: нужно знать, куда наводить узконаправленную антенну.
Примерно в июле 2026 года RUVDS обнаружил, что американцы стали обновлять данные по их аппаратам гораздо реже — раз в пять дней. В первый день после обновления связь хорошая. К четвёртому-пятому спутник улетает совсем в другое место, отклонения накапливаются, и антенна ищет его там, где написано, а там его чаще всего нет.
ОКБ «Пятое поколение» написало американским военным. Те вежливо ответили: «Спасибо за ваш запрос, мы займёмся вашей проблемой». И, естественно, ничем не занялись.
Это не уникальный случай. Лаборатория «Астродинамика» ФКИ МГУ (это подразделение МГУ, занимающееся космическими исследованиями) описывает аналогичный случай с запуском 5 ноября 2024 года с Восточного: в течение месяца в международных базах траекторных данных (CelesTrak и Space-Track) отсутствовали TLE для российских аппаратов. Они появились только 7 декабря. Целый месяц баллистики обходились своими силами.
Это значит, что NORAD ограничивает распространение TLE по российским объектам, и делает это уже давно — прецедент 2022–2023 годов, когда Space-Track почти год отдавал всем «ограниченные обновления TLE» без объяснения причин.
Когда NORAD перестал давать актуальные TLE, ОКБ «Пятое поколение» срочно подключили МГУ. У МГУ есть баллистический центр ФКИ (факультет космических исследований), где работает лаборатория «Астродинамика». Их программный продукт называется «Азерот» — сокращение от «Азимутально-элевационный ротатор» (так называют программы для управления спутниковыми антеннами).
Как они это делают:
Это полноценная замена NORAD на уровне одного университета. И они выложили свои TLE для спутника «Альтаир» в открытый доступ: cloud.cosmos.msu.ru/TLE.txt.
То есть в 2026 году Россия научилась самостоятельно считать орбиты, и это связано не с космической программой как таковой, а с хостингом на орбите.
И вот — самый грустный момент.
Когда с NORAD более-менее разобрались и начали тестироваться, оказалось, что спутники уже стремительно сходят с орбиты и жить им осталось недели две.
«Мы сидим и такие: зашибись. Начали тестировать в темпе, в ходе тестирования — ещё какие-то мелкие ошибки. И вот день запуска, всё готово, а спутник не отвечает. Собственно, ровно в день, когда мы хотели давать публичный доступ, он и ударился о небесную твердь.»
Последнее, что знают про основной аппарат, — орбита 270 км несколько дней назад, а потом ушёл со связи. За неделю назад на связь не вышел, что неудивительно. Ниже 300 км — уже очень рискованная зона. Формально спутники сгорают на 150 км, но это про большие аппараты, а у RUVDS пикоспутник без дополнительных слоёв защиты: как только атмосфера становится плотнее, он, скорее всего, просто ломается. На тех высотах, где он сейчас, никакая радиосвязь невозможна.
У дублёров было два, с той же прошивкой. За счёт этого появился второй шанс: накатили на дублёр всё необходимое (прошивка одинаковая, но обновление всё равно потребовалось) и переключились. Дублёр сейчас на 330 км, выше, чем был основной, и выстрелен он был на неделю позже, так что у него, по идее, есть еще неделька в запасе. По пессимистичному сценарию — до конца этой недели. Может, до конца августа. А может, завтра выключится.
Дублёру не хватает заряда на полноценный цикл, поэтому не всегда окно нормально открывается: может так быть, что сеанс связи есть, а заряд ещё не накопился, тогда оборудование не включается.
На момент написания поста доступ открыт через sat.ruvds.com, и люди подключаются. С горем пополам, но подключаются. Вход через аккаунт RUVDS, дальше слоты бронируются через Telegram-бота, который ходит в API грида за свободными окнами и бронирует их.
Сеансов несколько в день, за полчаса до сеанса нужно подтвердиться; если не подтвердил, сеанс отменяется. Многие на этом теряют свои сеансы.
После каждого пользователя всё удаляется, файлы не накапливаются: это максимально близко к использованию виртуалки, насколько вообще возможно при таком канале. От модели «спутник что-то постоянно вещает, а радиолюбители слушают» команда отказалась сознательно.
Воспользоваться этим, думают авторы, успеют несколько десятков человек. Пара десятков уже поработала, за неделю, может, наберётся ещё пара десятков. Денег за это не берут — это не услуга: как получилось, так получилось.
Когда аппарат замолчит, команда предлагает открыть на пару недель по той же схеме доступ к наземному образцу, тому самому, что стоит на вибростенде в лаборатории. Поиграться можно будет, но фотографировать он будет стену.
Первое. Это первая в истории полноценная попытка сделать из спутника сервер с SSH-доступом. До RUVDS космические аппараты использовались для ретрансляции, для съёмки, для навигации — но ни разу не для того, чтобы пользователь мог зайти на спутник по SSH и выполнить произвольную команду. Это инженерный прецедент такого же масштаба, как первый CTF на орбите и первый сайт на орбите — оба из этой же истории.
Второе. 45 байт в секунду — это не баг, это физический предел архитектуры, в которой полудуплекс, MQTT, контрольные суммы и помехи складываются в нечто, что на Земле невозможно. И это первый случай, когда инженерный пост-мортем этого предела опубликован открыто. Все предыдущие космические системы прятали эту проблему внутри специализированных протоколов и закрытых команд. RUVDS показал, что 45 байт/с — это рабочая скорость орбитального shell, и это больше, чем ноль.
Третье. NORAD перестал обновлять TLE по российским спутникам — и это политический сигнал, который нельзя игнорировать. Российские инженеры вынуждены были подключить МГУ для самостоятельного расчёта орбит. И МГУ это сделал — через 30 дней после отказа NORAD. Это технологическая независимость, рождённая из необходимости.
Четвёртое. Kaspersky Endpoint Security for Linux — Space Edition — это первый коммерческий антивирус на орбите. И он работает на Raspberry Pi Zero с 512 МБ RAM. Это инженерный рекорд, который никто не комментирует: компания, продающая антивирусы, адаптировала свой продукт под компьютер с 512 МБ оперативки и сделала это публично. CrowdStrike, SentinelOne, ESET, Norton — ни один из них не имеет Space Edition.
Пятое. Когда у RUVDS не было ни одного работающего протокола, они взяли STP из контроллеров 90-х. Это редкий случай, когда передний край космической инженерии использует решение 35-летней давности не из-за лени, а из-за того, что протоколы 90-х были спроектированы для полудуплекса и помех. Modbus, RS-485, STP — это инженерное наследие эпохи, когда каждая линия была ненадёжной, и это наследие оказалось критически важным для орбитального shell в 2026 году.
Шестое. Главный аппарат RUVDSSat1 сгорел ровно в день, когда должен был открыться публичный доступ. И это не метафора — это прямое попадание в самую суть проекта. Команда хотела показать, что орбитальный shell возможен, и атмосфера сказала: «нет, не сегодня». Вместо этого доступ открыт через дублёр, который работает на неделю дольше и без полного заряда. Это идеальная метафора для всей миссии: даже когда всё идёт не так, как планировалось, пользователи всё равно получают доступ, потому что архитектура спроектирована так, чтобы gracefully деградировать.
Седьмое. Это не провал, а рекорд. RUVDS поставил три рекорда в космической инженерии за три года: первый сайт на орбите (2023), первый CTF на орбите (2023), первый публичный SSH на орбите (2026). И все три — из серии «инженерного упрямства»: «мы знаем, что это сложно, мы знаем, что всё будет не так, как планировалось, но мы сделаем это, потому что можем».
Восьмое. Главный архитектурный урок этой истории — на орбите нет инфраструктуры, на которую можно положиться. NORAD перестанет обновлять TLE. MQTT потеряет половину пакетов. Карта памяти отсоединится от платы. Спутник сгорит в день открытия. И единственный способ выжить — это иметь дублёра, иметь запасной протокол, иметь наземный стенд, иметь МГУ в качестве замены NORAD, и иметь команду, которая готова переписывать код семь месяцев подряд.
Когда RUVDS пишет: «Раз десять-пятнадцать за этот год мы были близки к тому, чтобы просто плюнуть» — это не жалоба. Это инженерный факт: орбитальный shell — это проект, на грани провала которого инженерная команда балансирует постоянно, и единственная причина, почему он всё-таки работает, — это упрямство и архитектура, спроектированная для отказа.
Самое смешное: на спутнике стоит Doom. И Kaspersky Endpoint Security. И архив лучших статей Хабра. И каталог победителей конкурса «Космотекст». И протокол из контроллеров 90-х. И Raspberry Pi Zero за $15. И всё это работает через 45 байт в секунду на орбите 330 км.
Самое грустное: спутник, на котором это всё стоит, сгорел ровно в день, когда должен был открыться публичный доступ, и второй аппарат работает на последнем заряде.
Самое красивое: инженерная команда не сдалась, и пользователи реально подключаются, и каждый сеанс — это инженерное чудо, которое доказывает, что орбитальный shell возможен.
И, наконец, самое неочевидное: NORAD перестал обновлять TLE по российским спутникам — и МГУ пришёл на помощь. То есть хостинг на орбите заставил Московский государственный университет запустить собственный баллистический центр, который теперь публикует TLE для всех желающих. Это, пожалуй, самый неожиданный побочный эффект: попытка сделать SSH на орбите случайно создала в России независимую орбитальную навигацию.
Когда-нибудь историки инженерии напишут об этом так: «В 2026 году российская команда попыталась запустить VDS на орбиту. Спутник сгорел в день открытия. NORAD перестал давать данные. И именно поэтому Россия научилась считать орбиты сама». 🦑