D
DevOps в тапках
@devopsintapki52 подп.
64просмотров
4 марта 2026 г.
Score: 70
Привет! 👋 Продолжаем тему PKI. В прошлый раз разобрались, что такое leaf, intermediate и root сертификаты. Сегодня поговорим про несколько веток доверия и почему это иногда превращается в настоящую боль для инфраструктуры. ❓ Почему в одной инфраструктуре бывает несколько веток сертификатов Иногда внутри одного контура существует несколько PKI-иерархий Ветка 1 Devopsintapki Test Root CA ➡️ Devopsintapki Test TLS CA ➡️ nginx Ветка 2 Devopsintapki Test Environment Root CA ➡️ Devopsintapki Test Environment Issuing CA 1 ➡️ tyk И это две разные PKI-иерархии Компании часто делают 🔵 отдельный Root для TEST 🔵 отдельный Root для PROD 🔵 отдельный Root для DEV 🔵 иногда дополнительные промежуточные CA Формально это нормальная практика. Но иногда на практике 〰️ это превращается в настоящую инфраструктурную боль. Почему❓ Каждая такая ветка 〰️ отдельная зона доверия Клиент доверяет только тем серверам, чья цепочка сертификатов ведёт к знакомому Root CA Если цепочка ведёт к другому Root 〰️ соединение просто не установится. ⚠️ Чем опасны разные ветки доверия Допустим серверный сертификат подписан цепочкой к Devopsintapki Test Environment Root CA А в truststore лежит Devopsintapki Test Root CA Для Java и большинства TLS-клиентов это две разные вселенные Даже если названия похожи. Результат будет примерно такой PKIX path building failed # а ещё завёрнутый в TLS handshake error unable to find valid certification path TLS handshake error То есть TLS не сможет построить цепочку доверия ⚠️ Что ещё хуже Иногда в truststore складывают все корни подряд 🔵 тестовые 🔵 продовые 🔵 временные 🔵 старые Это может привести к 🔵 неожиданному доверию к тестовой инфраструктуре в проде 🔵 подключению к не тому серверу 🔵 нарушению сегментации окружений Особенно критично это в 🔵 банковских системах 🔵 API-шлюзах 🔵 инфраструктуре с mTLS ✅ Как делают в более зрелых PKI Не всегда нужно плодить отдельный Root CA для каждого окружения. Часто используют более управляемую архитектуру ROOT CA (офлайн) ⬇️ DEV Issuing CA TEST Issuing CA PREPROD Issuing CA PROD Issuing CA То есть 🔵 Root один 🔵 он хранится оффлайн 🔵 сегментация делается через разные issuing CA Это сильно упрощает 🔵 управление доверенными сертификатами 🔵 обновление инфраструктуры 🔵 автоматизацию выпуска сертификатов При этом безопасность сохраняется. ✅ В зрелых инфраструктурах бывает ещё интереснее Иногда issuing CA делают даже по типу нагрузки внутри одного окружения. Например PROD Root ⬇️ Web Issuing CA mTLS Issuing CA Kubernetes Issuing CA Internal Services CA Это позволяет 🔵 изолировать разные типы сервисов 🔵 быстрее отзывать скомпрометированные сертификаты 🔵 ограничивать область действия сертификатов ✅ Когда PKI перестаёт быть болью Если всё делается вручную 〰️ это действительно превращается в боль. Но при нормальной автоматизации поддержка нескольких веток становится вполне управляемой. Обычно используют для автоматизации 🔵 HashiCorp Vault PKI 🔵 Smallstep CA 🔵 EJBCA 🔵 cert-manager в Kubernetes В этом случае 🔵 выпуск сертификатов автоматический 🔵 ротация не требует ручной работы 🔵 отзыв сертификатов происходит централизованно ✅ Главное правило TEST доверяет только TEST PROD доверяет только PROD Root-сертификаты разных веток 〰️ это разные зоны доверия PKI 〰️ это не просто сертификаты. Это границы безопасности. #tls #ssl #java #pki #pkix #security #devops
64
просмотров
3398
символов
Нет
эмодзи
Нет
медиа

Другие посты @devopsintapki

Все посты канала →
Привет! 👋 Продолжаем тему PKI. В прошлый раз разобрались, ч — @devopsintapki | PostSniper