Skip to content

Releases: Floodww/RoutineOps

RoutineOps 2.5.0

Choose a tag to compare

@Floodww Floodww released this 24 Jul 11:55

Серверно-веб выпуск: изменения панели и сервера, накопленные после 2.4.8, плюс точный матч идентичности в keystore на macOS.

Устройства

  • Вывод из эксплуатации прямо из карточки устройства (с подтверждением по имени хоста); сервер ставит агенту задачу полного самоудаления, статус переключается в «выведено» по подтверждению агента.
  • «Пользователь за консолью» в карточке — кто сейчас за машиной (Windows: DOMAIN\user; macOS/Linux — логин активной сессии).
  • Пагинация списков устройств и журнала аудита; фильтры журнала считаются на сервере.

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

  • Удаление устройства из инвентаря отзывает его сертификат: удалённое устройство с живым агентом больше не «воскресает» пустой записью на следующем подключении. «Удалить из инвентаря» доступно только для уже выведенных из эксплуатации.
  • macOS, хранилище ключей: идентичность агента резолвится точной сверкой имени сертификата. Раньше на общей системной связке ключей (с чужими VPN/Wi-Fi-сертификатами) агент мог обратиться к не своему сертификату.

Управление

  • Выпуск и отзыв API-токенов из панели (роль, срок; токен показывается один раз).
  • Конфигурация-как-код: экспорт и применение скриптов, политик и групп через YAML и CLI routineops.
  • Массовые токены энроллмента: отзыв и список; секция «не подключились» в очереди энроллмента.

Совместимость

  • Миграции базы применяются автоматически при обновлении сервера.
  • Продукт (сервер+веб) и агент теперь версионируются раздельно (VERSION и AGENT_VERSION) — выпуск может двигать только один компонент.

Полный список изменений — CHANGELOG.md · CHANGELOG.en.md.

RoutineOps 2.4.8

Choose a tag to compare

@Floodww Floodww released this 23 Jul 07:37

Выпуск-добивка к 2.4.6: полный снос агента на Windows и видимость неприменённой блокировки.

Обновление уже установленной системы: ./update.sh в каталоге установки. Миграций базы в выпуске нет.

Установка с нуля: README.

Готовых бинарей к выпуску не прикладываем: инсталляторы едут в исходниках (build/msi, build/pkg) и раскладываются install.sh/update.sh, а бинари агентов собираются и подписываются на вашем сервере вашим ключом — чужой подписанный бинарь на нём всё равно не примется.

Полный список изменений: CHANGELOG.md (English).


Версия 2.4.7 подготавливалась, но не выпускалась: в ней нашлась ошибка вывода из
эксплуатации, описанная ниже. Все её изменения вошли в 2.4.8.

Устройства

  • Вывод из эксплуатации на Windows доведён до конца: снимается значок в трее,
    удерживавший файл агента, убирается автозапуск трея, каталог установки сносится
    целиком, а сам пакет снимается штатно — вместе с записью в «Установка и удаление
    программ». Раньше на выведенном устройстве оставались файлы, запись об установке и
    значок, возвращавшийся при следующем входе в систему.
  • Снос каталога при выводе из эксплуатации ограничен собственным каталогом агента.
    Если агент запускался не из своего каталога установки (ручное размещение рядом с
    чужими файлами), целиком каталог больше не удаляется — снимается только сам файл
    агента. Штатная установка пакетом ведёт себя как прежде.
  • Служба агента снимается с регистрации до принудительного завершения процессов.
    Иначе настроенное системой автовосстановление службы могло поднять агента обратно
    посреди сноса, и он удерживал бы свой файл.

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

  • Отказ применить блокировку виден оператору: устройство, на котором блокировка не
    поднялась, помечается в карточке отдельным признаком, событие пишется в журнал и
    уходит уведомлением. Раньше панель показывала «заблокировано», а устройство при этом
    оставалось рабочим, и расхождение не было видно нигде. Назначенная блокировка при
    этом сохраняется — агент продолжает попытки.
  • В карточке устройства появилось фактическое состояние блокировки, доложенное агентом,
    рядом с назначенным. Промежуточные состояния FileVault (ключ отозван, но перезагрузка
    ещё не сделана; отзыв не завершён) тоже стали видимы — прежде они писались в базу,
    но не показывались.

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

  • Windows, вывод из эксплуатации во время обновления системы. Если в момент снятия
    агента установщик Windows занят другой установкой, снятие пакета повторяется
    шесть раз с интервалом около десяти секунд. Если система занята дольше, файлы
    удаляются запасным путём, но запись в «Установка и удаление программ» остаётся —
    она не исчезает сама и убирается вручную либо переустановкой системы.

Совместимость

  • Обновление с 2.4.6 не требует ручных действий: миграций базы в выпуске нет.

RoutineOps 2.4.6

Choose a tag to compare

@Floodww Floodww released this 22 Jul 12:36

Первый публично оформленный выпуск RoutineOps. Крупный релиз: два раунда
состязательного ревью агента, массовый энроллмент, вывод устройств из эксплуатации,
расширенная инвентаризация и переоформленный веб-интерфейс.

Версия единая для сервера, веб-интерфейса и агента.
Английская версия списка изменений — CHANGELOG.en.md.

Обновление с 2.4.5

cd ~/RoutineOps
./update.sh

update.sh снимает бэкап базы, тянет релиз, пересобирает стек (миграции накатываются
до старта сервера, fail-closed) и заново публикует агентов. Парк обновится сам —
по умолчанию в течение 6 часов. Ручных действий не требуется.

Установка с нуля — ./install.sh, см. README.

Установщики (RoutineOps-agent.msi, RoutineOps-agent.pkg) едут в исходниках и
раскладываются по releases/ самим install.sh/update.sh — отдельно скачивать
их из этого релиза не нужно. Бинари агентов собираются и подписываются на вашем
сервере его собственным ключом релизов.


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

  • Блокировка устройства: устаревшее подтверждение блокировки, доставленное агентом
    после снятия, больше не воскрешает желаемое состояние «заблокировано» без пароля.
    Раньше устройство могло числиться заблокированным в панели, оставаясь полностью
    рабочим, и расхождение не было видно оператору.
  • Блокировка устройства: память о локальном снятии блокировки перенесена в защищённый
    каталог состояния. В каталоге, доступном пользователю на запись, она позволяла
    бессрочно подавлять повторную блокировку.
  • Блокировка устройства: команда с невалидным хешем пароля отклоняется агентом —
    раньше такая команда давала блокировку, которую нельзя снять без сети.
  • Каталог состояния службы на Windows защищён admin-only списком доступа с проверкой
    подмены каталога через точку повторного разбора (junction).
  • Блокировка устройства: устаревший отчёт о снятии, доставленный агентом из очереди
    после того, как была выдана НОВАЯ блокировка, больше не отменяет её. Раньше
    устройство, вернувшееся из офлайна, молча снимало с себя свежую блокировку.
  • Блокировка устройства: отказ применить блокировку больше не остаётся незамеченным
    агентом — состояние откатывается, попытка повторяется, отказ пишется в журнал.
    Раньше единичный сбой записи на диск подавлял блокировку бессрочно.
  • Определение пользователя за консолью на Linux больше не принимает сеанс без
    физического места (ssh, cron) за локальный вход.
  • Результат задачи, доставленный в обход очереди, больше не теряется молча: агент
    проверяет подтверждение сервера.
  • Закрыты 16 находок аудита готовности агента к парку в 1000+ машин и 17 находок
    трёх раундов состязательного ревью поверх него.

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

  • Windows, блокировка устройства. Локальный пользователь, имеющий доступ к файлу
    состояния блокировки, может снять её без пароля и подавить повторную блокировку до
    вмешательства оператора. Каталог этого файла намеренно доступен пользователю на
    запись — через него работают экран блокировки и значок в трее. Исправление
    требует переработки этого канала на Windows и запланировано на 2.4.7.
  • Отказ применения блокировки виден не везде. Если агент не смог поднять замок,
    он повторяет попытку и пишет отказ в свой журнал, но в панели это пока не
    отражается отдельным состоянием — планируется в 2.4.7.
  • Обновление с 2.4.5 в момент активной блокировки. Если сотрудник снял
    блокировку локально, а сервер ещё не получил отчёт об этом, и ровно в этот момент
    приезжает обновление, устройство может быть заблокировано повторно. Окно узкое,
    состояние самовосстанавливается, как только сервер получает отчёт. Выбрано
    сознательно: лишняя блокировка предпочтительнее потерянной.

Энроллмент

  • Массовый энроллмент: один токен на партию устройств вместо токена на устройство.
  • Очередь одобрения: устройство, заявившееся на энроллмент, ждёт решения оператора.
    Повторный энроллмент больше не проводит отклонённое или заблокированное устройство
    в рабочий статус в обход одобрения.
  • Экран энроллмента в веб-интерфейсе: очередь одобрения, выпуск массового токена,
    единая карта статусов устройства.

Устройства

  • Вывод из эксплуатации (decommission): серверная команда полного самоудаления агента
    — снятие службы, разоружение защиты от вмешательства, удаление состояния и бинаря.
    Статус переводится в терминальный только после подтверждения от агента.
  • Инвентаризация расширена: модель процессора, серийный номер, время загрузки,
    свободное место, пользователь за консолью и другие поля.
  • Поля инвентаря стали «липкими»: единичный сбой опроса больше не затирает ранее
    собранное значение пустым.
  • Самоудаление агента по команде оператора.

Задачи и скрипты

  • Результаты разовых задач переживают перезапуск агента и обрыв связи (устойчивая
    очередь на диске).
  • Задачи, застрявшие в состоянии «принята», закрываются по таймауту, а поздний
    результат больше не подменяет уже закрытую задачу молча.
  • Ограничение числа одновременно исполняемых скриптов на устройстве.
  • Скрипт, оставивший после себя фоновый процесс, больше не подвешивает канал задач.

Интеграции и API

  • Сервисные API-токены для автоматизации (выпуск и отзыв — только человеком).
  • Устойчивое соединение с Telegram при частичной блокировке провайдером.

Веб-интерфейс

  • Интерфейс переоформлен: тёмная тема liquid-glass на всех страницах и во всех
    элементах — панели, формы, таблицы, диалоги.
  • Навигация сгруппирована: обзор, алерты, журнал, затем хосты, управление, настройки.
  • Правила соответствия: разрез «прошло/не прошло» по устройствам, честная форма
    создания правила.
  • Дашборд: таксономия событий, распределение по операционным системам, контраст
    текста приведён к уровню AA, счётчик алертов считает подтверждённые корректно.

Установка и пакеты

  • Пакеты .deb и .rpm для агента на Linux.
  • Файлы окружения с переводами строк Windows больше не ломают установку на Unix.

Enterprise

  • [Enterprise] Лицензирование: ядро проверки, серверная выдача прав, страница
    «Лицензия» в веб-интерфейсе, автономный вендорский CLI выпуска лицензий.
    Срок действия проверяется в момент операции, а не фоновым тиком.
  • [Enterprise] FileVault: закрыты находки ревью механизма отзыва и эскроу
    ключей восстановления.

Совместимость

  • Обновление с 2.4.5 не требует ручных действий: миграции базы накатываются при
    запуске, состояние агента переносится автоматически.