Об этом проекте
CFSSL (швейцарский нож Cloudflare для PKI/TLS) — это инструментарий с открытым исходным кодом, предназначенный для управления инфраструктурой открытых ключей (PKI) и безопасностью транспортного уровня (TLS). Он работает как инструмент командной строки (CLI), так и как HTTP API-сервер, позволяя пользователям эффективно подписывать, проверять и объединять TLS-сертификаты.
Ключевые компоненты:
- cfssl: Основная утилита CLI для выполнения различных операций PKI, таких как подписание сертификатов, генерация ключей, создание пакетов и запуск API-сервера.
- multirootca: Сервер центра сертификации, способный использовать несколько ключей подписи, предлагающий конечные точки для подписания, аутентифицированного подписания и получения информации.
- mkbundle: Утилита для создания пакетов корневых и промежуточных сертификатов путем проверки на отзыв и истечение срока действия.
- cfssljson: Вспомогательный инструмент, который преобразует вывод JSON от CFSSL в отдельные файлы PEM для ключей, сертификатов, CSR и пакетов.
Основные возможности:
1. Подписание сертификатов: Пользователи могут подписывать запросы на подпись сертификатов (CSR) с помощью локального или удаленного центра сертификации. Инструмент позволяет переопределять имена хостов и указывать детали субъекта через JSON-конфигурацию.
2. Объединение сертификатов: CFSSL может создавать цепочки сертификатов с различными вариантами (оптимальный, повсеместный, принудительный) на основе криптографической стойкости и совместимости с браузерами. Поддерживается получение сертификатов непосредственно с доменов.
3. Генерация ключей и CSR: Генерация закрытых ключей и соответствующих CSR или самоподписанных сертификатов с использованием JSON-шаблонов, определяющих алгоритмы ключей, размеры и информацию о субъекте.
4. Поддержка OCSP: Генерация OCSP-ответов для выданных сертификатов и их обслуживание через OCSP-ответчик.
5. API-сервер: Запуск HTTP-сервера API для удаленных операций с сертификатами, настраиваемого с помощью пользовательских адресов, портов, уровней журналирования и конфигураций баз данных.
Для установки требуется Go 1.20+ из-за зависимостей cgo. Готовые бинарные файлы доступны в релизах GitHub. Инструментарий широко используется в инфраструктуре для автоматизации управления жизненным циклом TLS-сертификатов.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.