Open source лицензии: что важно знать владельцу бизнеса
Основы3 минРедакция Innovialabs
Коротко
Разрешительные лицензии (MIT, Apache 2.0) позволяют использовать код в закрытом коммерческом продукте почти без ограничений. Копилефтные (GPL, AGPL) могут обязать вас открыть исходный код, поэтому их нужно отслеживать до того, как продукт попадёт к клиентам или инвесторам.
Главное за минуту
Почти любой современный продукт собран из open source библиотек. Бесплатный код не значит «без правил»: у каждой библиотеки есть лицензия, и она определяет, что вы обязаны сделать, если используете этот код.
Лицензии делятся на два больших лагеря:
- Разрешительные (permissive) — MIT, BSD, Apache 2.0. Можно использовать в закрытом коммерческом продукте, достаточно сохранить уведомление об авторстве и текст лицензии.
- Копилефтные (copyleft) — GPL, AGPL, в мягкой форме LGPL. Если вы распространяете продукт с таким кодом, производная работа должна распространяться на тех же условиях, то есть с открытым исходным кодом.
Для бизнеса это вопрос не теории, а стоимости: неучтённая лицензия может всплыть при продаже компании, проверке инвестором или в споре с клиентом.
Сравнение популярных лицензий
| Лицензия | Тип | Можно в закрытый продукт | Главное условие |
|---|---|---|---|
| MIT | Разрешительная | Да | Сохранить копирайт и текст лицензии |
| BSD | Разрешительная | Да | То же, плюс ограничения на использование имени авторов |
| Apache 2.0 | Разрешительная | Да | Сохранить уведомления, отметить изменения; включает патентную лицензию |
| LGPL | Слабый копилефт | Обычно да, при динамической связке | Изменения самой библиотеки нужно открывать |
| GPL | Сильный копилефт | Нет, если распространяете | Производный продукт распространяется под GPL с исходниками |
| AGPL | Сильный копилефт | Нет, даже для SaaS | Пользователи по сети тоже должны получить исходники |
Ключевое слово — «распространение»
Обязательства GPL обычно включаются, когда вы передаёте программу другим: продаёте коробочную версию, отдаёте мобильное приложение, ставите софт клиенту на сервер.
Если код работает только на вашем сервере, а пользователи видят сайт или сервис, GPL, как правило, не требует раскрывать исходники. Именно эту лазейку закрывает AGPL: взаимодействие с программой по сети тоже считается поводом предоставить код.
Практический вывод:
- для мобильного приложения или десктоп-программы GPL-зависимость — серьёзный риск;
- для SaaS опаснее AGPL;
- для библиотеки или SDK, которые вы продаёте разработчикам, важны обе.
Как это влияет на продажу и инвестиции
При покупке компании или раунде инвестиций часто проводят технический due diligence. В нём проверяют, нет ли в коде компонентов, лицензия которых мешает закрытой коммерческой модели. Найденная проблема означает переписывание модуля, замену библиотеки или снижение оценки.
Отдельный риск — двойное лицензирование. Некоторые продукты доступны под AGPL бесплатно и под коммерческой лицензией за деньги. Использовать их бесплатно в закрытом продукте нельзя, а платная лицензия становится постоянной статьёй расходов.
Ещё один момент: правообладатель может сменить лицензию в новых версиях. Старые версии остаются под прежней лицензией, но обновления могут быть уже на других условиях.
Чек-лист для собственника
- Пропишите в договоре с подрядчиком, какие лицензии допустимы, и требуйте список зависимостей при сдаче.
- Ведите перечень зависимостей (SBOM). Его можно генерировать автоматически инструментами анализа лицензий.
- Проверяйте лицензию до внедрения, а не перед продажей.
- Сохраняйте уведомления: файлы LICENSE и NOTICE, раздел «Лицензии» в приложении.
- Решите заранее, планируете ли вы открывать свой код. Если нет — избегайте GPL и AGPL в распространяемых частях.
- В спорных случаях консультируйтесь с юристом по интеллектуальной собственности.
Частые ошибки
- «Это на GitHub, значит, можно». Код без лицензии по умолчанию защищён авторским правом, и использовать его без разрешения нельзя.
- Смотреть только на прямые зависимости. Транзитивные библиотеки тоже несут свои лицензии.
- Путать бесплатность и свободу использования. Бесплатная загрузка не равна праву встроить код в коммерческий продукт.
Этот материал — общее описание, а не юридическая консультация.