Хабрахабр

Импортозамещение операционных систем. Какими я вижу отечественные ОС

Когда мы говорим об дистрибутиве операционной системы, то речь впервую очередь идет не об ядре операционной системы, а о тех приложениях, которые входят в состав дистрибутива. А когда мы говорим об импортозамещение операционных систем, то речь идет о той или иной версии Linux. Ничего другого на российском рынке для импортозамещения не предлагается. Что касается ядра linux, то за его развитие отвечает Ли́нус Бенедикт То́рвальдс. И честно говоря мне ничего неизвестно, про российское ядро linux. А вот окружение любого дистрибутива linux разрабатывается различными организациями, все их и не перечислить: KDE, Mozilla, Google, IBM и т.д. и т.д. И следовало бы ожидать, что с появлением отечественных ОС аля linux этот список будет расширен отечественными разработками или модификациями. Но этого нет. Нет, это не обязательно отечественный браузер или почтовый клиента в этих дистрибутивах. Но что-то доработанное с учетом российских реалий в цифровой экономике хотелось бы видеть. Остановимся на этом.
Мне скажут:- «А зачем, что не устраивает из того что есть?». Первое, если мы ничего не вносим, то почему называем «отечественное ПО»? Только из-за того что, в лучшем случае, хранится на территории России? В качестве примера, давайте рассмотрим использование электронных сертификатов X509, электронной подписи, шифрование документов и трафика (tls/https). И в этом мне помог очень интересный анализ (в чем-то я с ним могу и не согласиться, но это частности) проблем с применением средств ЭЦП, возникающих у пользователей Linux. Вот один из выводов:

в некоторых случаях разработчики порталов, предоставляющих государственные услуги, рекомендуют использовать не входящие в Реестр операционные системы, а также программные средства и конфигурации, заведомо снижающие защищённость пользовательских данных.

Под словами «не входящие в Реестр операционные системы», естественно, надо понимать MS Windows. Эталоном среди порталов государственных, да и других услуг эталоном следует считать портал Госуслуги. Он позволяет работать с ним с любой отечественной ОС семейства Линукс. А всего-то в плагине, который он распространяет, обеспечена поддержка стандарта PKCS#11 для токенов/смарткарт и это делает его независимым от ОС, а для MS Windows в нем предусмотрена поддержка стандарта MS CSP с российскими криптоалгоритмами. И все. Он (плагин Госуслуг) не навязывает криптопровайдера (будь то CSP или PKCS#11) от того или иного производителя, он проверяет соответствие криптопровайдера стандарту. И почему этот положительный опыт не распространяется на другие ведомства загадка. Более того практика плагинов является все же порочной, она привязывает пользователя так или иначе к определенным ОС, а то и браузерам. Этот браузер поддерживает эти плагины (чего один CAPICOM стоит), а этот нет и т.п. Почему не затребовать в процессе аутентификации, например, чтобы пользователь предоставлял на портал подписанный им, его средствами, свою визитку или что-то в этом роде.

И так, первое что должно быть сделано, это отвязать, сделать независимыми от ОС и криптопровайдеров порталы услуг, в том числе и модернизировать портал Госуслуг.
А то сегодня до смешного доходит, вся компания работает на отечественной ОС (в том числе и бухгалтерия), но для доступа в ФНС (требуется ГОСТ-овый tls/https) держат специальный компьютер с MS Windows.

Вернемся к ним. Выше мы говорили о доработках в отечественных ОС. Сегодня купив и поставив на рабочее место отечественную ОС, российский потребитель оказывается ничего не получает с точки зрения российской криптографии: не может создать запрос на сертификат (о чем так хорошо написано здесь), не просмотреть нормально ГОСТ-ый сертификат, не подписать документ или проверить подпись, не защитить свою электронную почту. Зачем и почему они нужны. Не проще ли было скачать в Интернете дистрибутив Linux, тем более они постоянно развиваются». Сразу возникает вопрос:- «А что я приобрел? А где у нас дистрибутивы Линукс с браузерами или почтовыми клиентами, использующие российскую криптографию, где утилиты, позволяющие проверить электронную подпись, поставленную ФНС под выпиской из ЕГРЮЛ? На Западе или Востоке люди приобретая (необязательно за деньги) ОС сразу получают кучу полезных сервисов. Мне такие дистрибутивы не известны. И т.д. Поэтому я беру дистрибутив Mageia и прикручиваю к нему все то, о чем здесь пишу:

Абсолютное большинство приложений в Линукс (Mozilla, Google, LibreOffice, GnuPG и т.д. Как хранятся сертификаты и используются ключи в большинстке приложений в Линукс. и т.д.) в качестве хранилища сертификатов используют пакет NSS (Network Security Service):

При этом абсолютно не важно аппаратный это токен или программный или даже облачный. При этом предполагается, что личные сертификаты (сертификат плюс закрытый ключ) хранят на токенах/смарткартах PKCS#11. Корневые сертификаты NSS хранит в собственной БД. Это реализация, главное чтобы соблюдался стандарт PKCS#11. К сожалению в этом списке нет ни одного российского корневого сертификата. Следует отметить, что разаработчики браузеров Mozilla, Google предоставляют свой список доверенных корневых сертификатов. Пакет NSS ни в чем не уступает OpenSSL, но имеет одно неоспоримое преимущество – наличние базы данных сертификатов. NSS также ведет базу модулей (библиотек), ответственных за работу с тем или иным типом токена.

Пакет NSS, входящий в отечественные дистрибутивы ОС от Линукс, не поддерживает работу с отечественными ГОСТ-оыми токенами PKCS#11. И что мы имеем в итоге? А есть у нас отечественные токены со встроенной поддержкой ГОСТ-ов? А это ведет к тому что Firefox и другие программы не хотят работать с отечественными токенами. Это и аппаратные токены от различных производителей: Оказывается есть и в достаточном количестве.

К сожалению, абсолютное большинство аппаратных токенов сегодня используется как обыкновенная флэшка для хранения ключей и сертификатов.
Есть и свободно распространяемые программные токены как несертифицированные, так и сертифицированные:

И даже облачные токены PKCS#11 имеются:

Досадно еще то, что пакет NSS, включающий в свой состав ряд утилит, поставляется с багами, проявляющимися порой только на ГОСТ-вых сертификатах (calgoid, pp).

Мне могут возразить, это сложно, дорого и т.д. И как было бы здорово, если бы в состав отечественных дистрибутивов входил пакет NSS, поддерживающий работу с токенами PKCS#11 с ГОСТ-овой криптографией. Сам я отслеживаю NSS и добавляю в него поддержку ГОСТ-в начиная с версии NSS-3. Но если бы разработчики были заинтересованы, то они знали, что еще в 2010 году был зарегистрирован баг с ГОСТ для NSS. 41. 11 и по настоящее время NSS-3. Мне нравится ответ: — «А они там, на западе, добавили?». И с кем я только не встречался за эти годы (желающие могут посчитать), результат нуль. И нам оказывается тоже. Но им не надо.

И про все это так или иначе на страницах Хабр было написано. И вот, если бы NSS с поддержкой ГОСТ-ов, был бы в отечественных дистрибутивах, то уже малой кровью можно было добавлять поддержку ГОСТ-ов и в Firefox, и в Thunderbird, KMail, LibreOffice и т.д. Имеются так же и сертифицированные в ФСБ России версияи. Да, чуть не упустил OpenSSL с ГОСТ-ами. А openssl с ГОСТ-ами практически автоматом ведет к появлению в отечественных дистрибутивах и версии openvpn на ГОСТ-ах:

image

Но появилась бы и графическая утилита Клеопатра для этих же целей и GUI для NSS. Добавим сюда Apache, с поддержкой tls/https на ГОСТ-ах, да PHP с ГОСТ-ами не помешает.
И вот в руках пользователя отечественной ОС уже имелись бы и утилиты openssl и p7sign/p7verify для подписания электронной подписью файлов.

Для создания запроса на сертификат можно было бы воспользоваться утилитой guicreate_csp:

А если бы кто-то захотел развернуть на своем предприятии удостоверяющий центр, то пожалуйста:

А на западе продают и используют сертифицированный Линукс? Кто-то возможно бы сказал, а сертификация? Но ведь у всех отечественных производителей все перечисленные выше продукты входят в состав сертифицированных дистрибутивов. Нет, конечно. А какие бы классные дистрибутивы были бы для использования в учебном процессе по специальности «Информационная безопасность» или в школах. Что мешает при сертификации включить в состав доработанные пакеты. Напоминаю, мы говорили про электронную подпись, про использование отечественной криптографии. На мой взгляд в сертификации должно быть заинтересовано и Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации.
И так, какой напрашивается вывод?

Первое, доступ к порталам не должен зависеть от типа операционной системы и используемого криптопровайдера.

Второе, отечественные ОС должны иметь в своем составе браузеры с поддержкой ГОСТ-ового https.

Второе, отечественные ОС должны иметь в своем составе почтовые клиенты с поддержкой ГОСТ (подписание/шифрование).

Третье, отечественные ОС должны иметь в своем составе средства электронной подписи и шифрования

Четвертое, отечественные ОС должны иметь поддержку токенов/смарткарт PKCS#11 с поддержкой российской криптографии.

Надеюсь мой последний абзац не станет руководством к действию. Вот если этот минимум будет реализован, то можно говорить от отечественных ОС типа Linux.
А то не так давно был в одном министерстве, а там увидел уникальное импортозамещение: им предложили некий отечественный Линукс, в нем запустили виртуалку с Windows и со всеми прибамбасами, которые в Министерстве используются на Винде были, и сказали можно рапортовать об импортозамещении.

Чего у нас только нету! Это по настоящему круто!!!

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть