- PVSM.RU - https://www.pvsm.ru -
Когда мы говорим об дистрибутиве операционной системы, то речь впервую очередь идет не об ядре операционной системы, а о тех приложениях, которые входят в состав дистрибутива. А когда мы говорим об импортозамещение операционных систем, то речь идет о той или иной версии Linux. Ничего другого на российском рынке для импортозамещения не предлагается. Что касается ядра linux, то за его развитие отвечает Ли́нус Бенедикт То́рвальдс [1]. И честно говоря мне ничего неизвестно, про российское ядро linux. А вот окружение любого дистрибутива linux разрабатывается различными организациями, все их и не перечислить: KDE, Mozilla, Google, IBM и т.д. и т.д. И следовало бы ожидать, что с появлением отечественных ОС аля linux этот список будет расширен отечественными разработками или модификациями. Но этого нет. Нет, это не обязательно отечественный браузер или почтовый клиента в этих дистрибутивах. Но что-то доработанное с учетом российских реалий в цифровой экономике хотелось бы видеть. Остановимся на этом.
Мне скажут:- «А зачем, что не устраивает из того что есть?». Первое, если мы ничего не вносим, то почему называем «отечественное ПО»? Только из-за того что, в лучшем случае, хранится на территории России? В качестве примера, давайте рассмотрим использование электронных сертификатов X509, электронной подписи, шифрование документов и трафика (tls/https). И в этом мне помог очень интересный анализ [2] (в чем-то я с ним могу и не согласиться, но это частности) проблем с применением средств ЭЦП, возникающих у пользователей Linux. Вот один из выводов:
в некоторых случаях разработчики порталов, предоставляющих государственные услуги, рекомендуют использовать не входящие в Реестр операционные системы, а также программные средства и конфигурации, заведомо снижающие защищённость пользовательских данных.
Под словами «не входящие в Реестр операционные системы», естественно, надо понимать MS Windows. Эталоном среди порталов государственных, да и других услуг эталоном следует считать портал Госуслуги [3]. Он позволяет работать с ним с любой [4] отечественной ОС семейства Линукс. А всего-то в плагине, который он распространяет, обеспечена поддержка стандарта PKCS#11 для токенов/смарткарт и это делает его независимым от ОС, а для MS Windows в нем предусмотрена поддержка стандарта MS CSP с российскими криптоалгоритмами. И все. Он (плагин Госуслуг) не навязывает криптопровайдера (будь то CSP или PKCS#11) от того или иного производителя, он проверяет соответствие криптопровайдера стандарту. И почему этот положительный опыт не распространяется на другие ведомства загадка. Более того практика плагинов является все же порочной, она привязывает пользователя так или иначе к определенным ОС, а то и браузерам. Этот браузер поддерживает эти плагины (чего один CAPICOM стоит), а этот нет и т.п. Почему не затребовать в процессе аутентификации, например, чтобы пользователь предоставлял на портал подписанный им, его средствами, свою визитку или что-то в этом роде.
И так, первое что должно быть сделано, это отвязать, сделать независимыми от ОС и криптопровайдеров порталы услуг, в том числе и модернизировать портал Госуслуг.
А то сегодня до смешного доходит, вся компания работает на отечественной ОС (в том числе и бухгалтерия), но для доступа в ФНС (требуется ГОСТ-овый tls/https) держат специальный компьютер с MS Windows.
Выше мы говорили о доработках в отечественных ОС. Вернемся к ним. Зачем и почему они нужны. Сегодня купив и поставив на рабочее место отечественную ОС, российский потребитель оказывается ничего не получает с точки зрения российской криптографии: не может создать запрос на сертификат (о чем так хорошо написано здесь [2]), не просмотреть нормально ГОСТ-ый сертификат, не подписать документ или проверить подпись, не защитить свою электронную почту. Сразу возникает вопрос:- «А что я приобрел? Не проще ли было скачать в Интернете дистрибутив Linux, тем более они постоянно развиваются». На Западе или Востоке люди приобретая (необязательно за деньги) ОС сразу получают кучу полезных сервисов. А где у нас дистрибутивы Линукс с браузерами или почтовыми клиентами, использующие российскую криптографию, где утилиты, позволяющие проверить электронную подпись [5], поставленную ФНС под выпиской из ЕГРЮЛ? И т.д. Мне такие дистрибутивы не известны. Поэтому я беру дистрибутив Mageia и прикручиваю к нему все то, о чем здесь пишу:
Как хранятся сертификаты и используются ключи в большинстке приложений в Линукс. Абсолютное большинство приложений в Линукс (Mozilla, Google, LibreOffice, GnuPG и т.д. и т.д.) в качестве хранилища сертификатов используют пакет NSS (Network Security Service):
При этом предполагается, что личные сертификаты [6] (сертификат плюс закрытый ключ) хранят на токенах/смарткартах PKCS#11. При этом абсолютно не важно аппаратный это токен или программный или даже облачный. Это реализация, главное чтобы соблюдался стандарт PKCS#11. Корневые сертификаты NSS хранит в собственной БД. Следует отметить, что разаработчики браузеров Mozilla, Google предоставляют свой список доверенных корневых сертификатов. К сожалению в этом списке нет ни одного российского корневого сертификата. NSS также ведет базу модулей (библиотек), ответственных за работу с тем или иным типом токена. Пакет NSS ни в чем не уступает OpenSSL, но имеет одно неоспоримое преимущество – наличние базы данных сертификатов.
И что мы имеем в итоге? Пакет NSS, входящий в отечественные дистрибутивы ОС от Линукс, не поддерживает работу с отечественными ГОСТ-оыми токенами PKCS#11. А это ведет к тому что Firefox и другие программы не хотят работать с отечественными токенами. А есть у нас отечественные токены со встроенной поддержкой ГОСТ-ов? Оказывается есть и в достаточном количестве. Это и аппаратные токены от различных производителей:
К сожалению, абсолютное большинство аппаратных токенов сегодня используется как обыкновенная флэшка для хранения ключей и сертификатов.
Есть и свободно распространяемые программные токены как несертифицированные [7], так и сертифицированные:
И даже облачные токены [8] PKCS#11 имеются:
Досадно еще то, что пакет NSS, включающий в свой состав ряд утилит, поставляется с багами, проявляющимися порой только на ГОСТ-вых сертификатах (calgoid [9], pp [10]).
И как было бы здорово, если бы в состав отечественных дистрибутивов входил пакет NSS, поддерживающий работу с токенами PKCS#11 с ГОСТ-овой криптографией. Мне могут возразить, это сложно, дорого и т.д. Но если бы разработчики были заинтересованы, то они знали, что еще в 2010 году был зарегистрирован баг с ГОСТ [11] для NSS. Сам я отслеживаю NSS и добавляю в него поддержку ГОСТ-в начиная с версии NSS-3.11 и по настоящее время NSS-3.41. И с кем я только не встречался за эти годы (желающие могут посчитать), результат нуль. Мне нравится ответ: — «А они там, на западе, добавили?». Но им не надо. И нам оказывается тоже.
И вот, если бы NSS с поддержкой ГОСТ-ов, был бы в отечественных дистрибутивах, то уже малой кровью можно было добавлять поддержку ГОСТ [12]-ов и в Firefox, и в Thunderbird, KMail [13], LibreOffice [14] и т.д. И про все это так или иначе на страницах Хабр было написано. Да, чуть не упустил OpenSSL [15] с ГОСТ-ами. Имеются так же и сертифицированные в ФСБ России версияи. А openssl с ГОСТ-ами практически автоматом ведет к появлению в отечественных дистрибутивах и версии openvpn [16] на ГОСТ-ах:
Добавим сюда Apache, с поддержкой tls/https на ГОСТ-ах, да PHP с ГОСТ-ами не помешает.
И вот в руках пользователя отечественной ОС уже имелись бы и утилиты openssl и p7sign/p7verify для подписания электронной подписью файлов. Но появилась бы и графическая утилита Клеопатра [17] для этих же целей и GUI для NSS [18].
Для создания запроса на сертификат можно было бы воспользоваться утилитой guicreate_csp [19]:
А если бы кто-то захотел развернуть на своем предприятии удостоверяющий центр [20], то пожалуйста:
Кто-то возможно бы сказал, а сертификация? А на западе продают и используют сертифицированный Линукс? Нет, конечно. Но ведь у всех отечественных производителей все перечисленные выше продукты входят в состав сертифицированных дистрибутивов. Что мешает при сертификации включить в состав доработанные пакеты. А какие бы классные дистрибутивы были бы для использования в учебном процессе по специальности «Информационная безопасность» или в школах. На мой взгляд в сертификации должно быть заинтересовано и Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации.
И так, какой напрашивается вывод? Напоминаю, мы говорили про электронную подпись, про использование отечественной криптографии.
Первое, доступ к порталам не должен зависеть от типа операционной системы и используемого криптопровайдера.
Второе, отечественные ОС должны иметь в своем составе браузеры с поддержкой ГОСТ-ового https.
Второе, отечественные ОС должны иметь в своем составе почтовые клиенты с поддержкой ГОСТ (подписание/шифрование).
Третье, отечественные ОС должны иметь в своем составе средства электронной подписи и шифрования
Четвертое, отечественные ОС должны иметь поддержку токенов/смарткарт PKCS#11 с поддержкой российской криптографии.
Вот если этот минимум будет реализован, то можно говорить от отечественных ОС типа Linux.
А то не так давно был в одном министерстве, а там увидел уникальное импортозамещение: им предложили некий отечественный Линукс, в нем запустили виртуалку с Windows и со всеми прибамбасами, которые в Министерстве используются на Винде были, и сказали можно рапортовать об импортозамещении. Надеюсь мой последний абзац не станет руководством к действию.
Это по настоящему круто!!! Чего у нас только нету!
Автор: saipr
Источник [21]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/firefox-2/303375
Ссылки в тексте:
[1] То́рвальдс: https://ru.wikipedia.org/wiki/%D0%A2%D0%BE%D1%80%D0%B2%D0%B0%D0%BB%D1%8C%D0%B4%D1%81,_%D0%9B%D0%B8%D0%BD%D1%83%D1%81
[2] анализ: https://www.altlinux.org/%D0%AD%D0%9F
[3] Госуслуги: http://gosuslugi.ru/
[4] любой: https://habr.com/post/334162/
[5] подпись: https://service.nalog.ru/vyp/%20)
[6] личные сертификаты: https://habr.com/post/357668/
[7] несертифицированные: https://sourceforge.net/projects/atoken/
[8] облачные токены: https://habr.com/post/403563/
[9] calgoid: https://habr.com/post/398783/
[10] pp: https://habr.com/post/406037/
[11] баг с ГОСТ: https://bugzilla.mozilla.org/show_bug.cgi?id=608725
[12] поддержку ГОСТ: https://www.linux.org.ru/news/mozilla/12799094
[13] KMail: https://habr.com/post/417735/
[14] LibreOffice: https://habr.com/post/428429/
[15] OpenSSL: https://habr.com/post/415423/
[16] openvpn: https://habr.com/post/338390/
[17] Клеопатра: https://habr.com/post/316736/
[18] GUI для NSS: https://habr.com/post/335712/
[19] guicreate_csp: https://habr.com/post/412993/
[20] удостоверяющий центр: https://habr.com/post/413493/
[21] Источник: https://habr.com/post/434358/?utm_campaign=434358
Нажмите здесь для печати.