Использование Open Source стало стандартом разработки IT-продуктов во всем мире: современные приложения состоят из десятков модулей, многие из которых базируются на программном обеспечении с открытым исходным кодом. Разработчикам не нужно каждый раз заново создавать базовые куски кода – благодаря этому и произошло бурное развитие технологий в последнее десятилетие. Такой же «бум» нужен российскому рынку решений для госсектора и объектов критической информационной инфраструктуры в рамках импортозамещения. Использование программы с открытым исходным кодом, казалось бы, поможет решить эту задачу. Это признают и в Минцифры, разрабатывающем меры поддержки Open Source. Но российская IT-отрасль разделилась на два лагеря – сторонников и противников применения в импортозамещении программного обеспечения, основанного на Open Source.

*
Корень всех противоречий – в разной трактовке понятий и сути обсуждаемого предмета. Нужно различать просто открытый код, свободное программное обеспечение (СПО) и продукт, созданный на базе ПО с открытым кодом.

Программное обеспечение с открытым кодом – это не всегда свободное ПО. Код может быть выложен во всеобщий доступ, но права на его использование могут быть ограничены.

СПО предполагает возможность использовать код, модифицировать его и делать так называемые форки – «ответвления» от основного проекта, но при этом степень этой свободы сильно зависит от лицензии, под которой опубликован этот самый исходный код программы.

Опенсорс-проекты разрабатываются на базе открытого кода сообществом специалистов. Использование таких наработок регламентируется лицензиями – например, самая распространенная GPL (General Public License). Первая и вторая версии этой модели лицензирования достаточно строгие: все изменения должны быть возвращены в комьюнити, и они очень ограниченно могут быть коммерциализированы. А вот GPL v3/LGPL v3, так же как и MIT/BSD, MPL, Apache License, дают право сделать полноценный коммерческий продукт на базе открытых проектов. И этот продукт может быть закрытым, а код – сильно переработанным. Более того, продукт может состоять из модулей на базе разных проектов с открытым исходным кодом.
*
Многие проекты СПО стали стандартом для разработки тех или иных решений во всем мире. Основные претензии к Open Source как таковому со стороны IT-экспертов, выступающих против его применения в импортозамещении, – к его безопасности. Открытый код хорош именно тем, что он аудируемый: здесь легче обнаружить и исправить ошибки. В итоге качество кода существенно выше, чем у любого проприетарного ПО, которое зависит от конкретного человека или небольшой группы разработчиков.

Если нужно усилить безопасность конечного продукта на основе открытого кода – это можно сделать внутри него. Например, отечественная операционная система специального назначения Astra Linux: часть модулей убрана, добавлена модель управления доступом SELinux и криптозащита, используются другие протоколы. Все это реализуемо.

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

В России есть примеры создания успешных коммерческих продуктов на базе международных опенсорс-проектов. Например, компания Postgres Professional объединила российских разработчиков сообщества открытой СУБД PostgreSQL и создала свою базу данных Postgres Pro. Компания вносит вклад в международную версию и параллельно выпускает собственный продукт, включенный в реестр отечественного ПО и сертифицированный ФСТЭК.