Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Как започна всичко

В самото начало на периода на самоизолация получих писмо по пощата:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Първата реакция беше естествена: или трябва да отидете за жетони, или те трябва да бъдат донесени, но от понеделник всички си седим вкъщи, има ограничения за движение и какво, по дяволите, не се шегува. Следователно отговорът беше съвсем естествен:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

И както всички знаем, от понеделник, 1 април, започна период на доста строга самоизолация. Освен това всички преминахме към дистанционна работа и имахме нужда и от VPN. Нашият VPN е базиран на OpenVPN, но модифициран, за да поддържа руска криптография и възможност за работа с PKCS#11 токени и PKCS#12 контейнери. Естествено се оказа, че ние самите не сме напълно готови да работим чрез VPN: много просто нямаха сертификати, а някои бяха с изтекъл срок.

Как протече процесът?

И тук помощната програма идва на помощ cryptoarmpkcs и приложение CAFL63 (Център за проверка).

Помощната програма cryptoarmpkcs позволи на служители, които са в самоизолация и имат токени на домашните си компютри, да генерират заявки за сертификати:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Служителите ми изпратиха запазени заявки по имейл. Някой може да попита: - Ами личните данни, но ако се вгледате внимателно, те не са в искането. А самата заявка е защитена с нейния подпис.

При получаване заявката за сертификат се импортира в базата данни на CAFL63 CA:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

След което заявката трябва да бъде отхвърлена или одобрена. За да разгледате заявка, трябва да я изберете, да щракнете с десния бутон и да изберете „Вземете решение“ от падащото меню:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Самата процедура по вземане на решения е абсолютно прозрачна:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Сертификатът се издава по същия начин, само елементът от менюто се нарича „Издаване на сертификат“:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

За да видите издадения сертификат, можете да използвате контекстното меню или просто щракнете двукратно върху съответния ред:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Сега съдържанието може да се разглежда както чрез openssl (раздел OpenSSL Text), така и чрез вградения преглед на приложението CAFL63 (раздел Certificate Text). В последния случай можете да използвате контекстното меню, за да копирате сертификата в текстова форма, първо в клипборда, а след това във файл.

Тук трябва да се отбележи какво се е променило в CAFL63 в сравнение с първата версия? Що се отнася до сертификатите за преглед, вече отбелязахме това. Също така стана възможно да изберете група обекти (сертификати, заявки, CRL) и да ги видите в режим на страниране (бутонът „Преглед на избраните ...“).

Може би най-важното е, че проектът е свободно достъпен на githabe. В допълнение към дистрибуциите за Linux са подготвени дистрибуции за Windows и OS X. Дистрибуцията за Android ще бъде публикувана малко по-късно.

В сравнение с предишната версия на приложението CAFL63, не само самият интерфейс е променен, но също така, както вече беше отбелязано, са добавени нови функции. Например, страницата с описание на приложението е преработена и са добавени директни връзки за изтегляне на дистрибуции:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Мнозина питаха и все още питат къде да получат GOST openssl. Традиционно давам връзка, любезно предоставена гарекс. Как се използва този openssl е написано тук.
Но сега комплектите за разпространение включват тестова версия на openssl с руска криптография.

Следователно, когато настройвате CA, можете да посочите /tmp/lirssl_static за Linux или $::env(TEMP)/lirssl_static.exe за Windows като използван openssl:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

В този случай ще трябва да създадете празен файл lirssl.cnf и да посочите пътя до този файл в променливата на средата LIRSSL_CONF:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Разделът „Разширения“ в настройките на сертификата е допълнен с полето „Достъп до информация за органа“, където можете да зададете точки за достъп до главния сертификат на CA и до OCSP сървъра:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Често чуваме, че CA не приемат заявки, генерирани от тях от кандидати (PKCS#10) или, дори по-лошо, ги принуждават да генерират заявки с генериране на двойка ключове на оператора чрез някакъв CSP. И те отказват да генерират заявки за токени с невъзстановим ключ (на същия RuToken EDS-2.0) чрез интерфейса PKCS#11. Поради това беше решено да се добави генериране на заявки към функционалността на приложението CAFL63, използвайки криптографските механизми на токени PKCS#11. За активиране на механизмите за токени беше използван пакетът TclPKCS11. Когато създавате заявка към CA (страница „Заявки за сертификати“, функция „Създаване на заявка/CSR“) вече можете да изберете как да се генерира двойката ключове (с помощта на openssl или на токен) и самата заявка да бъде подписана:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Библиотеката, необходима за работа с токена, е посочена в настройките на сертификата:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Но ние се отклонихме от основната задача да предоставим на служителите сертификати за работа в корпоративна VPN мрежа в режим на самоизолация. Оказа се, че някои служители нямат жетони. Решено е да им бъдат предоставени защитени контейнери PKCS#12, тъй като приложението CAFL63 позволява това. Първо, за такива служители правим PKCS#10 заявки, посочващи CIPF тип „OpenSSL“, след което издаваме сертификат и го пакетираме в PKCS12. За да направите това, на страницата „Сертификати“ изберете желания сертификат, щракнете с десния бутон и изберете „Експортиране в PKCS#12“:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

За да сме сигурни, че всичко е наред с контейнера, нека използваме помощната програма cryptoarmpkcs:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Вече можете да изпращате издадени удостоверения на служителите. На някои хора просто се изпращат файлове със сертификати (това са собственици на токени, тези, които са изпратили заявки) или PKCS#12 контейнери. Във втория случай всеки служител получава паролата за контейнера по телефона. Тези служители просто трябва да коригират конфигурационния файл на VPN, като посочат правилно пътя до контейнера.

Що се отнася до собствениците на токени, те също трябваше да импортират сертификат за своя токен. За да направят това, те използваха същата помощна програма cryptoarmpkcs:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Сега има минимални промени в конфигурацията на VPN (етикетът на сертификата върху токена може да се е променил) и това е всичко, корпоративната VPN мрежа е в изправност.

Щастлив край

И тогава ми хрумна, защо хората ще ми носят жетони или трябва да пратя пратеник за тях. И изпращам писмо със следното съдържание:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Отговорът идва на следващия ден:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Веднага изпращам връзка към помощната програма cryptoarmpkcs:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Преди да създадат заявки за сертификати, препоръчах им да изчистят токените:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

След това по имейл бяха изпратени заявки за сертификати във формат PKCS#10 и аз издадох сертификати, които изпратих на:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

И тогава дойде приятен момент:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

Имаше и това писмо:

Инфраструктура с публичен ключ. Издаване на удостоверения по време на самоизолация

И след това се роди тази статия.

Можете да намерите дистрибуции на приложението CAFL63 за Linux и MS Windows платформи

тук

Намерени са дистрибуции на помощната програма cryptoarmpkcs, включително платформата Android

тук

Източник: www.habr.com

Добавяне на нов коментар