pki что это такое
Про PKI «на пальцах» за 10 минут
Предложил коллегам провести внутреннюю мини-лекцию по сабжу — идея зашла. Сел писать план лекции и… чот психанул — в итоге очнулся, дописывая небольшой гайд. Подумал, что будет полезно добавить сюда что-то для быстрого понимания, что такое PKI, зачем она нужна и как работает, так как пока готовился, чтобы освежить память, искал информацию в том числе на полюбившемся «Хабрахабре», но статей в таком формате не нашел.
Пишу на примере наших повседневных задач, которые знакомы многим: беспарольный доступ к серверам OpenVPN и защита доступа к ресурсам с помощью HTTPS.
Без теории не обойтись
PKI (Public Key Infrastructure, инфраструктура открытых ключей) — это про безопасность. Подразумевается, что у каждой сущности в инфраструктуре есть свой ключ, которым она однозначно идентифицируется. То есть, если ключ украден, пострадавшей сущностью может представиться укравший. PKI нужна для того, чтобы оперативно минимизировать последствия такой кражи. Ключ представлен двумя частями: публичной и приватной.
Аналог — это RSA ключи для SSH, но инфраструктурой их назвать сложно, так как отсутствует централизованный механизм управления ими. Также разница в том, что публичная часть ключа в паре ключей для SSH неизменна, а сертификат (публичную часть ключа участника PKI) можно перевыпустить в любой момент.
В PKI существует один (на самом деле, должно быть минимум два) или несколько Certification Authority — центров сертификации (удостоверяющих центров), отдающих публичные части своих ключей клиентам, которым выдают подписанные ими сертификаты. Таким образом, участники инфраструктуры «понимают», кто ими управляет, и действителен ли сертификат, выданный им или их «товарищам», в настоящий момент времени (одним из важнейших атрибутов сертификатов является срок их действия). Либо же сервер, у которого есть публичная часть ключа CA инфраструктуры, в которой он и его клиенты работают, понимает, что к нему пришел клиент с действительным сертификатом, и разрешает ему что-то, или запрещает в противном случае.
OpenVPN: как это бывает
На самом деле во многих компаниях на этот случай уже есть «PKI» и у него есть имя, потому что это кто-то из сотрудников. Назовем такого человека, к примеру, Полуэкт (с) и расскажем, как обычно это работает, а потом я расскажу, как это должно быть в идеале.
При появлении в компании нового сотрудника Полуэкт создает и присылает ему архив, в котором, помимо конфигурации собственно OpenVPN клиента, находятся файлы (на примере сотрудника Иванова А.А.):
В компании Acme все эти файлы генерирует Полуэкт…
А теперь как должно быть
На моем примере, упрощенно:
Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
(пароль в конце лучше не указывать, а то придется его вводить каждый раз при подключении, а VPN у нас по сертификатам как раз, чтобы этого не было; тем более у нас в Pixonic есть OTP от Google);
Нужна ли вам эта фишка — вопрос для обсуждения. Соответственно, то, как ее внедрить, пока что выходит за рамки этой статьи.
И про срок действия клиентского сертификата: если предположить, что я устроился в Pixonic по временному контракту на 3 месяца, и мы его не продлили, то в описанной ситуации мой доступ к VPN автоматически отключится через 90 дней с момента выпуска сертификата. Чего не случится с SSH-доступом, если коллеги забудут отключить аккаунт во FreeIPA или удалить строчку из authorized_keys руками. C — сесуриту.
Теперь по Борщеву HTTPS
Предположим, вы хотите «включить SSL» для вашего сайта, чтобы у посетителей появился красивый замочек в браузере. Тут, собственно, все то же самое, но с некоторыми нюансами:
Национальная библиотека им. Н. Э. Баумана
Bauman National Library
Персональные инструменты
PKI (Public Key Infrastructure)
Содержание
Описание
Инфраструктура открытых ключей – это система цифровых сертификатов, центров сертификации и центров регистрации, которые проверяют и подтверждают подлинность каждого объекта, участвующего в электронной транзакции с использованием криптографии с открытыми ключами. Инфраструктура открытых ключей использует технологию открытых ключей для:
Основные определения
Цифровая подпись- метод использования шифрования с открытым ключом для обеспечения целостности данных и невозможности отказа от посылки. Зашифрованный блок информации после расшифровки получателем, идентифицирует отправителя и подтверждает сохранность данных. Например: документ «сжат», HASH зашифрован с помощью частного ключа отправителя и приложен к документу (по сути, это означает приложить «отпечаток пальца» этого документа). Получатель использует открытый ключ для расшифровки полученного сообщения до состояния «выжимки», которая затем сравнивается с «выжимкой» полученной после «сжатия» присланного документа. Если обе «выжимки» не совпали, то это означает, что документ был изменен или поврежден в процессе пересылки.
Компоненты PKI
Основная идея
Задачей PKI является определение политики выпуска цифровых сертификатов, выдача их и аннулирование, хранение информации, необходимой для последующей проверки правильности сертификатов. В число приложений, поддерживающих PKI, входят: защищенная электронная почта, протоколы платежей, электронные чеки, электронный обмен информацией, защита данных в сетях с протоколом IP, электронные формы и документы с электронной цифровой подписью (ЭЦП).
Удостоверяющий центр также публикует и списки отозванных сертификатов (Certificate Revocation List/CRL), которые могут использовать клиенты инфраструктуры открытого ключа, когда решают вопрос о доверии сертификату пользователя и/или компьютера.
Создаётся пара ключей либо центром выдачи сертификатов (удостоверяющим центром), по запросу пользователя, или же самим пользователем с помощью специального программного обеспечения. Пользователь делает запрос на сертификат, после чего, после процедуры идентификации пользователя, центр выдаёт ему сертификат со своей подписью. Эта подпись свидетельствует о том, что данный сертификат выдан именно этим центром выдачи сертификатов и никем другим.
Секретный ключ используется для подписи данных, открытый ключ в свою очередь используется для шифрования данных. Открытый ключ известен всем, а секретный ключ хранится в тайне. Владелец секретного ключа всегда хранит его в защищённом хранилище и ни при каких обстоятельствах не должен допустить того, чтобы этот ключ стал известным злоумышленникам или другим пользователям. Если же секретный ключ всё таки станет известен злоумышленникам, то он считается скомпрометированным и должен быть отозван и заменен. Только владелец секретного ключа может подписать данные, а также расшифровать данные, которые были зашифрованы открытым ключом, соответствующим секретному ключу владельца. Подпись на данных или письме гарантирует авторство полученной информации и то, что информация в процессе передачи не подверглась изменениям. Подпись двоичного кода гарантирует, что данное программное обеспечение действительно произведено указанной компанией и не содержит вредоносного кода, если компания это декларирует.
Архитектуры PKI В основном выделяют 5 видов архитектур PKI:
В основном PKI делятся на разные архитектуры по следующим признакам:
Примеры использования PKI
Шифрование сообщений
Сторона Б зашифровывает документ открытым ключом стороны А. Чтобы убедиться, что открытый ключ действительно принадлежит стороне А, сторона Б запрашивает сертификат открытого ключа у удостоверяющего центра. Если это так, то только сторона А может расшифровать сообщение, так как владеет соответствующим закрытым ключом.
Электронный отпечаток
Электронно-цифровая подпись (ЭЦП)
Сторона А формирует ЭЦП документа и отправляет документ стороне Б. Сторона Б запрашивает сертификат открытого ключа стороны А у удостоверяющего центра, а также информацию о действительности сертификата. Если сертификат стороны А действителен и проверка ЭЦП прошла успешно, значит документ был подписан стороной А, а не кем-то другим.
Обзор систем управления ключевыми носителями и цифровыми сертификатами (PKI)
Представляем обзор отечественного и мирового рынка систем управления жизненным циклом ключевых носителей с использованием инфраструктуры открытых ключей (Public Key Infrastructure — PKI). Мы проведём анализ возможностей таких решений, опишем принципы их работы и разберём основные отличия.
Введение
Средства аутентификации, основанные на технологии открытых ключей, постепенно вытесняют традиционные механизмы, основанные на парольной защите. Это связано с большой надёжностью криптографических методов, которые не требуют запоминать и хранить пароли. Вместо этого современные информационные системы всё чаще используют различные варианты электронных подписей и аутентификацию с использованием инфраструктуры открытых ключей (Public Key Infrastructure, PKI).
PKI — это набор методов, основанный на применении сертификата открытого ключа, выпущенного удостоверяющим центром. Открытый ключ подтверждает легитимность владельца закрытого криптоключа, однако сам по себе не представляет ценности и не может быть использован для получения доступа к информационным ресурсам. Использование PKI предполагает применение защищённых носителей данных, в качестве которых выступают токены, смарт-карты, виртуальные контейнеры.
В результате перед каждой организацией, использующей аутентификацию на основе PKI, встаёт проблема управления жизненным циклом ключевых носителей. Даже небольшие компании, применяющие одну-две сотни ключей, вынуждены тратить время и силы ответственных сотрудников на контроль сроков использования сертификатов безопасности, их замену, блокировку или отзыв в случае увольнения работника.
Отдельным аспектом проблемы является групповой выпуск ключей с учётом требований существующих политик безопасности. При создании сертификатов необходимо учитывать ряд параметров, индивидуальных для каждой организации, а филиальная структура может накладывать дополнительные ограничения на этот процесс.
Помимо этого, в рамках одной компании могут использоваться десятки типов ключей и разные виды сертификатов. Часть из них выпускается внутри организации, а часть — передаётся из внешних удостоверяющих центров. Таким образом, предприятиям нужна платформа, которая будет поддерживать токены и смарт-карты разных производителей, иметь возможность работать с виртуальными носителями и мобильными решениями для аутентификации, а также максимально эффективно контролировать «чужие» сертификаты.
Ещё один важный момент связан с регламентным учётом средств криптографической защиты информации (СКЗИ). Нормативные документы диктуют особый порядок регистрации таких носителей и требуют от предприятий, работающих с персональными данными, формирования специализированной отчётности.
Все эти вопросы в разной степени решают специализированные продукты для управления ключевыми носителями и цифровыми сертификатами PKI. С момента выхода нашего предыдущего обзора таких систем на отечественном и мировом рынке произошли значительные изменения, а вендоры существенно обновили функциональность своих решений. В новом материале мы описали основные возможности современных систем управления ключевыми носителями, проанализировали актуальные тенденции глобального рынка и отдельно остановились на продуктах, предлагаемых в России.
Системы управления ключевыми носителями и цифровыми сертификатами
Все системы управления ключевыми носителями, представленные на рынке, позволяют выполнять ряд базовых операций, возникающих в течение жизненного цикла электронного средства аутентификации:
Большинство систем позволяет вести учёт ключевых носителей, а также ведение журнала действий с ними. К функциям этого блока относятся:
Некоторые решения предоставляют возможность передавать журналы работы с ключами в SIEM-продукты для дальнейшей обработки и анализа. Отечественные системы дополнительно реализуют функции поэкземплярного учёта СКЗИ и составления связанных с ними регламентных отчётов.
На рабочем месте пользователя обычно устанавливается клиентская часть системы управления ключевыми носителями. Она отвечает за проверку валидности ключа, а также за ряд операций с ним. Нередко такие агенты предоставляют администратору возможность удалённой блокировки токена или смарт-карты.
Ещё одной типовой функцией решений для управления ключевыми носителями является поддержка каталогов пользователей, однако подход к её реализации различается. Большинство продуктов взаимодействует с сервисами Active Directory, некоторые решения используют коннекторы к кадровым и CRM-системам, отдельные вендоры пошли по пути создания собственной службы каталогов.
Архитектура большинства систем управления ключевыми носителями включает следующие компоненты:
Мировой рынок систем управления ключевыми носителями и цифровыми сертификатами
С одной стороны, рынок систем управления ключевыми носителями относительно узок, а количество игроков, имеющих специализированные решения для контроля жизненного цикла физических устройств такого рода, невелико. С другой стороны, в составе продуктов для аутентификации, имеющихся в портфелях десятков производителей, встречаются подсистемы, отвечающие за менеджмент ключей.
Ещё один аспект глобального рынка — решения для управления цифровыми сертификатами, не связанными с физическими устройствами. Здесь мы наблюдаем обратный процесс: разработчики продуктов для управления ключевыми носителями добавляют в свои продукты функции по контролю внешних сертификатов, а также виртуальные ключи. В этом секторе всё большую долю рынка забирают облачные решения, связанные с управлением сертификатами безопасности в распределённых хранилищах.
Аналитики не выделяют системы управления ключевыми носителями и цифровыми сертификатами в самостоятельный рынок. Так, консалтинговая компания Gartner рассматривает их в рамках значительно более широкого сектора User Authentication, а также Access Management. «Магический квадрант» последнего включает глобальные компании, такие как IBM, Microsoft и Oracle, но не учитывает нишевых игроков — решения Thales или HID.
Рисунок 1. «Магический квадрант» Gartner для сектора Access Management, 2018 год
В связи с этим можно обозначить три группы вендоров, действующих на рынке систем управления ключевыми носителями и PKI-сертификатами. Мы выделили наиболее важных, по нашему мнению, игроков в каждой из них.
Поставщики специализированных решений по управлению ключевыми носителями:
Разработчики продуктов для управления сертификатами безопасности:
Поставщики комплексных решений для аутентификации с некоторыми функциями управления ключевыми носителями:
Российский рынок систем управления ключевыми носителями и цифровыми сертификатами (PKI)
Решения для управления ключевыми носителями весьма востребованы отечественными компаниями. Не в последнюю очередь спрос на такие системы обусловлен нормативными актами регулирующих органов, устанавливающими требования к цифровой подписи и особый порядок учёта криптографических ключей, ограничивающими возможности использования несертифицированных решений.
Базовые документы, регулирующие использование криптографических ключей российскими организациями:
Кроме того, для поставки программных продуктов в государственные органы и муниципальные службы они должны быть сертифицированы ФСТЭК России и включены в реестр отечественного ПО.
Эти факторы существенно ограничивают деятельность зарубежных поставщиков на рынке систем управления ключевыми носителями, что привело к активному развитию решений российских разработчиков. «Большая четвёрка» отечественных вендоров в этом сегменте выглядит следующим образом: «Индид», «Аванпост», «Актив», «Аладдин Р.Д.». Необходимо учитывать тот факт, что «Индид» и «Актив» продают один и тот же продукт — каждая под своим брендом (решение разработано «Индидом» и поставляется «Активом» по концепции White Label).
Следует отметить, что компании «Аладдин Р.Д.» и «Актив» являются также поставщиками аппаратных решений для идентификации — токенов и смарт-карт JaCarta и «Рутокен» соответственно. Мы уже публиковали сравнение ключей различных производителей, представленных на отечественном рынке.
Западные вендоры не в состоянии конкурировать с российскими разработчиками на рынке госконтрактов, но, тем не менее, готовы поставлять свои продукты коммерческим компаниям. Особенно сильны их позиции в секторе автоматизации местных филиалов глобальных компаний. На отечественном рынке работают представительства HID Global и Gemalto (ныне вошедшей в состав Thales).
Отсутствие давления со стороны зарубежных поставщиков, уникальные требования российских регуляторов и высокая конкуренция на внутреннем рынке привели к активному развитию функциональных возможностей отечественных продуктов. Многие из таких систем, представленных в обзоре, не только не уступают западным аналогам, но и превосходят их. Зачастую российские компании способны предоставить заказчику продукт с более широким набором функций и даже предложить более гибкую и экономически эффективную схему лицензирования.
Краткий обзор возможностей систем управления ключевыми носителями
В этом разделе представлены описания тех продуктов, которые доступны для приобретения на территории России.
Avanpost PKI
Российская компания «Аванпост» выпустила новую версию своей системы управления ключевыми носителями. Avanpost PKI предназначена для управления сертификатами безопасности, физическими устройствами и СКЗИ на протяжении всего их жизненного цикла — от выпуска до блокировки и отзыва. Решение состоит из серверной части, базы данных, веб-клиента для пользователя и администратора, а также агента, отвечающего за взаимодействие с ключевыми носителями в фоновом режиме.
Avanpost PKI поддерживает большое число носителей, представленных на отечественном рынке, включая полную линейку ключей eToken и «Рутокен», а также разработки JaCarta и ESMART. Система интегрируется с кадровыми решениями отечественных и зарубежных производителей и способна получать сведения о пользователях из LDAP-каталогов, CRM-продуктов и банковского ПО на основе разработок Step Up и BSS.
Решение Avanpost PKI может применяться как на предприятиях, использующих различные виды ключевых носителей в своей деятельности, так и в компаниях, оказывающих услуги по выпуску сертификатов безопасности. Система поддерживает иерархию «центр регистрации — компания — работник» с возможностью многоуровневого разделения доступа администраторов. В качестве конечного пользователя ключа может выступать не только сотрудник компании, но и информационная система. При этом в Avanpost PKI 6 можно вести учёт владельцев таких ИС.
Функциональные возможности Avanpost PKI 6:
Больше информации о решении Avanpost PKI можно найти на сайте разработчика.
HID ActivID Credential Management System
Один из ведущих производителей средств контроля доступа к физическим и цифровым объектам имеет в своём пакете решений и программное обеспечение для управления ключевыми носителями. Система HID ActivID Credential Management System предназначена для выпуска и управления жизненным циклом USB-токенов, смарт-карт, модулей Windows TPM и других носителей. Решение HID способно управлять средствами аутентификации для доступа к серверам и рабочим станциям как в границах периметра безопасности, так и за его пределами. При этом система может применяться не только для контроля доступа к объектам сетевой инфраструктуры, но и для подписывания и шифрования отдельных документов, электронных писем и других важных данных.
Возможности системы управления средствами идентификации HID ActivID CMS:
Решение интегрируется с другими программными продуктами HID Global, работающими с ключевыми носителями. Например, если компания выпускает смарт-карты не самостоятельно, а при помощи авторизованного сервис-бюро, то для передачи больших объёмов конфиденциальных данных можно использовать систему ActivID Batch Management System (BMS). В качестве агента идентификации на рабочих станциях и других объектах ИТ-инфраструктуры используется приложение ActivID ActivClient.
Подробная информация о системе управления средствами идентификации HID ActivID доступна на сайте вендора.
Indeed Certificate Manager
Система управления ключевыми носителями Indeed Certificate Manager предназначена для администрирования жизненного цикла сертификатов безопасности, учёта физических носителей (токенов, смарт-карт и т. д.), а также контроля политик безопасности в отношении средств криптографической защиты. Совместно с другими решениями компании «Индид» продукт реализует механизм двухфакторной аутентификации и систему единого входа (SSO) с использованием физических и электронных ключей. Indeed Certificate Manager соответствует регламентным требованиям, предъявляемым к учёту средств криптографической защиты информации (СКЗИ), и обеспечивает ведение электронного журнала для таких ключей.
Архитектура решения включает следующие компоненты:
Интеграция с другими продуктами, удостоверяющими центрами и каталогами пользователей осуществляется через набор коннекторов и программный интерфейс (API).
Функциональные возможности Indeed Certificate Manager:
Indeed Certificate Manager поддерживает ключевые носители «Рутокен», JaCarta, eToken, ESMART, а также AvestKey и ID Prime. Система работает с удостоверяющими центрами Microsoft CA и «КриптоПро», а данные о пользователях получает из Active Directory или базы УЦ.
Дополнительную информацию об Indeed Certificate Manager ищите на сайте разработчика.
JaCarta Management System
Производитель заявляет, что масштабируемость системы даёт возможность управлять жизненным циклом более чем миллиона ключевых носителей в рамках одной организации. Архитектура решения помимо серверной части, базы данных и клиента включает собственное криптохранилище для критически важных данных. Разработчики создали открытый API, который позволяет эксплуатантам и вендорам разрабатывать коннекторы для интеграции JaCarta Management System с внешними решениями и информационными системами организации. Для связи с мобильными устройствами и IoT-клиентами создатели системы предлагают отдельный модуль JaCarta Mobile Gateway.
Возможности JaCarta Management System:
Полная информация о решении JaCarta Management System доступна на сайте компании «Аладдин Р.Д.».
SafeNet Authentication Manager
Компания Thales предлагает программный комплекс для централизованного управления ключевыми носителями PKI — SafeNet Authentication Manager (SAМ). Продукт вошёл в состав продуктовой линейки компании Thales после того, как она в 2019 году приобрела компанию Gemalto. Решение предназначено для развёртывания и сопровождения USB-токенов eToken и смарт-карт IDPrime MD в масштабах крупных организаций.
SafeNet Authentication Manager увязывает между собой пользователей, их ключевые носители, приложения и ресурсы, доступ к которым нужно ограничивать, а также политику безопасности — правила и регламенты, принятые в организации.
SafeNet Authentication Manager может быть интегрирован с SafeNet Authentication Client (SAC) — программным клиентом, который включает в себя как драйверы для работы с носителями и информацией на них, так и пользовательские инструменты самостоятельного администрирования ключевых носителей.
SafeNet Authentication Manager обеспечивает:
SafeNet Authentication Manager 9.0 поддерживает разные версии операционной системы Microsoft Windows Server (включая 2016) и разные службы каталогов, в том числе Microsoft Active Directory, Active Directory Application Mode (ADAM), OpenLDAP и другие.
Больше информации о SafeNet Authentication Manager можно найти на сайте производителя.
«Рутокен KeyBox»
Отечественный производитель электронных идентификаторов и средств контроля доступа предлагает систему управления ключевыми носителями «Рутокен KeyBox», которая представляет собой ребрендинг системы Indeed Certificate Manager. Программный продукт поддерживает всю линейку ключей этого вендора, а также распространённые в России носители других компаний, включая JaCarta, eToken, Gemalto, ESMART и другие. Решение позволяет управлять всем жизненным циклом электронных ключей через связь учётных записей пользователей, средств аутентификации и регламентов безопасности.
Система реализует выпуск сертификатов через удостоверяющие центры, использующие отечественные криптографические стандарты, и поддерживает решения, применяющие усиленную или квалифицированную электронную подпись.
Архитектура «Рутокен KeyBox» состоит из серверных компонентов, включающих:
На рабочие станции устанавливается клиентский модуль и приложение Credential Provider, предназначенное для разблокировки токена без авторизации в ОС.
В «Рутокен KeyBox» выделены четыре базовые роли: пользователь, которому доступны операции по смене PIN-кода токена, обновлению сертификата безопасности и блокировке ключа в случае утраты; оператор службы поддержки (helpdesk), который может выпускать ключи, регистрировать токены и привязывать их к определённому пользователю; администратор системы, отвечающий за разработку шаблонов сертификатов и политик PIN-кодов носителей, а также имеющий возможность настраивать подключения к УЦ и устанавливать параметры жизненного цикла ключей; аудитор, имеющий доступ только для чтения. Доступна возможность настройки других ролей.
Функциональные возможности «Рутокен KeyBox»:
Решение предназначено для сетей, построенных на базе платформы Windows. Серверная часть работает в рамках Microsoft Windows Server 2008—2012, а веб-клиент — в основных Windows-браузерах.
Всю информацию о «Рутокен KeyBox» можно найти на странице с описанием продукта на сайте производителя.
Выводы
Все решения для управления ключевыми носителями, доступные на отечественном рынке, предоставляют пользователям и администраторам полную поддержку жизненного цикла средств контроля доступа. Программные продукты обеспечивают учёт физических и виртуальных ключей, а также ведение журнала операций с ними. Российские решения дополнительно дают возможность вести поэкземплярный учёт СКЗИ в соответствии с требованиями регулирующих органов. Каждая отечественная разработка обладает рядом достоинств, выделяющих её среди аналогичных решений.
Компании «Аладдин Р.Д.», «Актив», HID Global выпускают собственные ключевые носители в различных форматах, однако все решения, представленные в обзоре, поддерживают широкий набор USB-токенов, смарт-карт и виртуальных контейнеров, используемых в российской практике.
В заключение следует отметить, что отечественные решения не выглядят слабыми в сравнении с разработками западных вендоров. Напротив, государственное регулирование этого сектора рынка дало стимул российским разработчикам, чьи продукты по ряду параметров уже превосходят зарубежные системы управления ключевыми носителями.