Trust at the edge · доверие в самом удостоверении
Доступ к парку устройств, который работает без сети
Инженер входит по криптографическому удостоверению. Личность, роль и привязка к устройству зашиты в самом сертификате — устройство проверяет всё локально, без обращения к центру в момент входа.
01 · Проблема
Тысячи устройств. Два плохих варианта.
Банкоматы, станки с ЧПУ, подстанции — парк из тысяч устройств без постоянной связи. Как давать инженерам доступ?
Вариант A
Общая учётка на всех
Один пароль на весь парк. Ноль подотчётности: в журнале — общая учётка, а не конкретный инженер. Отозвать доступ у одного — значит сменить пароль на тысячах устройств.
Вариант B
Персональные учётки на каждом устройстве
N инженеров × M устройств. Каждый найм, увольнение и ротация — массовое обновление парка. На офлайн-парке — неуправляемо в принципе.
Третий путь — Tessera
Одна техническая учётка + личность в удостоверении
На устройстве — одна учётка. Кто вошёл, под какой ролью и на какой срок — записано в самом удостоверении. Полная подотчётность без N×M.
А классический PAM? Vault, Teleport и бастионы класса PASM требуют достижимости центра в момент входа: нет связи — нет доступа (или дыра в обход). На zero-egress парке они не работают по построению.
02 · Как работает
Пять шагов — от политики до отзыва
-
Выпуск
Администратор задаёт политику: роли, устройства по тегам, срок действия. УЦ выпускает короткоживущий сертификат с правами внутри — на флешку под PIN.
-
Вход
Инженер вставляет флешку и выбирает роль. Engine локально проверяет подпись, host-binding (именно это устройство), срок и разрешённые роли — без единого запроса в сеть.
-
Сессия
Открывается ровно на запрошенной роли — least privilege, даже если сертификат позволяет больше. Личность инженера зафиксирована в удостоверении.
-
Носитель под контролем
Вынул флешку — сессия завершается. Мониторинг udev следит за носителем: нет носителя — нет сессии.
-
Отзыв
CRL, отзыв живых сессий, карантин устройства. Офлайн-backstop: сертификат протухает сам по TTL — часы или смена, не месяцы.
03 · Возможности
Каждое свойство — механизм, не обещание
X.509 + PKCS#11
Аппаратные токены Rutoken / JaCarta с ГОСТ — или PIN-контейнер на обычной флешке. Стандартные форматы, никакого vendor lock-in.
Host-binding
Удостоверение привязано к конкретному устройству. Украденная флешка бесполезна на соседнем банкомате — Engine откажет локально.
Короткоживущие удостоверения
TTL — часы или смена. Даже без связи с центром доступ протухает сам: время работает на защиту, а не против неё.
Роли и enforcement
Роль из удостоверения превращается в реальные ограничения: Astra МКЦ, группы, sudoers, systemd-лимиты. Не «доступ вообще», а ровно нужный уровень.
CRL и отзыв
Отзыв вечен: монотонный crlNumber защищает от подмены списка старым. Живые сессии отзываются, устройство можно поместить в карантин.
Tamper-evident аудит
Журнал на устройстве — hash-chain: каждая запись сшита с предыдущей, подчистка обнаруживается. Для air-gapped — экспорт курьерским носителем.
Делегирование выпуска
Промежуточные CA для филиалов и подрядчиков — в рамках (name constraints), которые устройство проверяет офлайн. Делегат не выйдет за границы.
ГОСТ и сертификация
КриптоПро CSP и Rutoken — сертифицированные СКЗИ. Первая целевая платформа — Astra Linux SE.
Гибридные парки
Есть связность — sync-агент подтягивает роли и CRL (pull-only). Деградация сети меняет свежесть данных, но не модель безопасности.
04 · Сценарии
Где это уже нужно
Парк без единого исходящего соединения
Флешка → выбор роли → вход без сети. Отзыв на серверной стороне — мгновенно; на офлайн-парке — гарантированно по TTL.
Изолированный цех
Оператор смены входит под ролью oper, наладчик — под ролью
serv: каждый со своего удостоверения, права — по роли.
Tamper-evident журнал ведётся на самом устройстве; регулятору —
экспорт по USB.
Доступ по наряду
Подрядчик сканирует QR-код телефоном, диспетчер подтверждает онлайн (four-eyes), доступ — только на время работ. Само устройство в сеть не выходит ни на миг.
Регулируемые среды
Одна техническая учётка на устройстве, вход по ГОСТ-токену.
issuance_id связывает выпуск → вход → действия → завершение
в одну доказуемую нить.
05 · Сравнение
Tessera против классических PAM и бастионов
Разница не в наборе функций, а в архитектуре: где живёт решение о доступе.
| Критерий | Классические PAM / бастионы | Tessera |
|---|---|---|
| Офлайн-парк | Требуют достижимости центра в момент входа | Работает без сети; сервер — ускоритель, не условие |
| Деградация сети | Компромисс: fail-open (дыра) или fail-closed (простой) | Fail-closed by design + TTL-backstop: валидный доступ продолжает работать |
| Zero-egress банкоматы | Не применимо | Целевой сегмент |
| Короткоживущий доступ | Политика на сервере — нужен сервер, чтобы её применить | TTL в самом удостоверении — истекает без чьего-либо участия |
| Делегирование | RBAC на сервере | Name constraints в сертификате — рамки проверяются офлайн |
| Нагрузка на центр | Каждый вход — запрос к центру | Только выпуск и спорадичные CRL |
06 · Устойчивость
Отказ компонента — не дыра
Сервер недоступен? Вход по действующим сертификатам продолжает работать, истёкшие — не продлеваются. Fail-closed по дизайну. Безопасность одинакова с сервером и без: сервер добавляет масштаб и свежесть данных — не безопасность.
07 · Open core
Открытое ядро, коммерческое управление
Открыто AGPL-3.0
- Tessera Engine — валидация + enforcement
- Tessera Login — PAM-модуль
- Вход по сертификату
- Базовые роли: группы, sudoers
- Hash-chain аудит на устройстве
Коммерческое enterprise
- Tessera Control — управление парком, CRL, инвентарь
- Tessera Codes — одноразовые QR-коды
- МКЦ-адаптер (Astra)
- SELinux-адаптер
- Центральный приём аудита + SIEM-экспорт
- ГОСТ-FFI
- Windows-адаптер roadmap
Принцип: форматы и верификация открыты — всё, что устройство проверяет, можно проаудировать. Генерация, доставка и управление парком — коммерческие.
Обсудить пилот
Покажем вход без сети на вашем сценарии: банкоматы, цех, подстанции. Расскажите про свой парк — вернёмся с конкретикой по механизму.