
Привет, Хабр. Меня зовут Валерий Ледовской, и последние десять лет я занимаюсь русской локализацией Mozilla. Вы наверняка видели мои статьи про Browser Policy Manager или Russian Spelling Dictionary. Сегодня я хочу рассказать о проекте, который мы с командой готовим к выпуску — и который, надеюсь, вы захотите поддержать.
Зачем ещё один браузер?
Ситуация, с которой сталкиваются многие российские пользователи, выглядит так: есть сайты, подписанные сертификатами, выпущенными Министерством цифрового развития. Обычный Firefox такие сайты не открывает — точнее, открывает, но с ошибкой, потому что соответствующий корневой сертификат не входит в глобальный список доверенных. Добавить его в системное хранилище — значит доверять ему везде. Это плохая идея: корень, который должен работать только для ограниченного круга российских ресурсов, получает право подписывать что угодно, и любой скомпрометированный или ошибочно выданный сертификат от этого корня будет приниматься браузером для любого сайта в мире.
Good Bear решает эту проблему иначе. Это форк Firefox, в котором доверие к российскому корневому сертификату не является глобальным. Оно ограничено специальным встроенным контейнером. Сайты, чья цепочка заканчивается на точно закреплённом российском корне, открываются в изолированном контексте, а всё остальное — куки, пароли, referrer, тело запроса, состояние сессии — в этот контекст не попадает.
Что уже сделано и что будет
Проект находится в высокой степени готовности. Ниже — ключевые вещи, которые уже реализованы или находятся в финальной стадии.
Scoped‑доверие вместо глобального. Российский корень принимается только внутри выделенного контейнера, идентифицируемого через userContextId / OriginAttributes. В обычном контексте тот же сертификат по‑прежнему считается недействительным. Никаких строковых эвристик по CN или O — только точная криптографическая идентификация.
Стандартная проверка остаётся стандартной. Hostname, срок действия, подпись, EKU, Key Usage, Basic Constraints, длина цепочки — всё это проверяется ровно так же, как в обычном Firefox. Мы не добавляем GOST, не трогаем криптографию и не делаем «универсальных исключений». Вторичная проверка запускается только после того, как стандартная не прошла, и никогда не превращает уже принятый обычный канал в российский.
Полная изоляция состояния. Куки, localStorage, IndexedDB, Cache API, service workers, HTTP‑аутентификация, клиентские сертификаты, переиспользование соединений и 0-RTT не пересекают границу контейнера. Менеджер паролей и автозаполнение в российском контейнере отключены — если нельзя доказать безопасное разделение, лучше перестраховаться.
Безопасная навигация. POST/PUT/PATCH не воспроизводятся автоматически: если сайт требует тело запроса, мы не будем его переотправлять. Редиректы классифицируются на каждом шаге. Российские подресурсы в обычных страницах блокируются.
Понятный интерфейс. В адресной строке — отдельный нейтральный маркер контейнера и отдельный значок RU для российского PKI. Они не смешиваются. В security popup видно цепочку сертификатов и источник доверия. Все строки — на русском, потому что Good Bear — русскоязычный продукт: мы не делаем отдельную английскую сборку.
Ребрендинг без потери происхождения. Продукт называется Good Bear, у него свой маскот — медведь в очках, — но все обязательства MPL-2.0 и указания на Mozilla и третьи стороны сохранены. Мы никого не вводим в заблуждение и не претендуем на аффилиацию с Mozilla или государственными структурами.
Отключение хостинговых сервисов Mozilla. Аккаунт Mozilla, Синхронизация, Relay, Monitor, IP Protection, Normandy/Shield, телеметрия, загрузка словарей Mozilla и автообновление аддонов — всё это выключено. При этом Google Safe Browsing и проверка отзыва сертификатов остаются включёнными: у нас есть собственный project‑owned ключ, а не заимствованный у Mozilla.
Обновления. На Windows работает нативный апдейтер Firefox с подписанными MAR‑файлами и GitHub Releases. На Ubuntu пока только ручная процедура: скачать .deb из релиза, проверить SHA-256, установить через apt. Это не идеально, но так мы не трогаем файлы, которыми управляет пакетный менеджер, и не создаём ложного ощущения автоматической безопасности.
Команда
Над проектом работает не один человек. В команде уже есть Андрей Ковалёв и другие соавторы, которые помогают с кодом, тестированием, сборкой и ревью. Мои открытые проекты — ru-spelling-dictionary, browser-policy-manager и теперь good-bear — развиваются именно так: небольшая команда, которая делает вещи, которые считает важными.
Почему нужна поддержка
Good Bear — это не хобби на выходных. Это полноценный форк Firefox, который требует:
Платных подписок на инструменты разработки. Сборка, статический анализ, линтеры, тестовые среды — всё это стоит денег.
Облачной инфраструктуры. Нам нужны удалённые сборочные машины — отдельно Ubuntu, отдельно Windows Server. Это виртуальные машины с дисками, памятью и трафиком, и они не бесплатны.
Времени. Команда работает над проектом в свободное время, но чем больше поддержки, тем больше времени можно уделять разработке и тем быстрее мы дойдём до релиза.
Проект уже прошёл огромный путь: десятки патчей, сотни тестов, проверки безопасности, ревью кода. Но чтобы выпустить стабильную версию и поддерживать её, нужны ресурсы.
Комментарии (21)

Burtanshy
22.09.2026 15:14а почему не в хроме? и в маскота берите белоголового орлана.

Goudron Автор
22.09.2026 15:14Маскота пришлось менять, потому что лого Firefox принадлежит Mozilla Corporation. А Chromium не взял за основу, потому что Firefox направлен на личную конфиденциальность и от него в этом деле отталкиваться логичнее.

Nyanny
22.09.2026 15:14Почему отключены "хостинговые сервисы Mozilla. Аккаунт Mozilla, Синхронизация"?
У многих форков это не отключено.
Имеется ли возможность включить самостоятельно?

Goudron Автор
22.09.2026 15:14Вопрос правильный. Потому что это сервисы Mozilla и это лицензионный вопрос. Гугловскую проверку удалось подключить быстро через собственный API-ключ. Вероятно, аккаунт/синхронизация и другие сервисы будут реализованы альтернативно. Но нужно это сделать безопасно и доказать, что реализовано безопасно. Я этим займусь позже. Mozilla предоставляет код сервера для аккаунта/синхронизации, т.е. можно на своих мощностях организовать. С другой стороны, я у них спрошу, есть ли возможность оставить их сервисы. Но это вопрос договорённостей, потому что в Firefox реализацию поддержки сертификатов Минцифры не включили, хотя рассматривали такую возможность. Поэтому в Good Bear могут не разрешить подключать свои сервисы. Это вопрос для проработки.

BugM
22.09.2026 15:14Выглядит неюзабельно если я верно понял. Зачем мне страдать и каждый раз пароль вводить? Почему его нельзя сохранить? Почему мои куки не сохраняются? Почему просто не сделать нормально?

Goudron Автор
22.09.2026 15:14Он будет сохраняться для таких сайтов, но в отдельной базе паролей. Это то разделение разных историй, которое ещё не доделали в контейнерах Firefox. В Good Bear это реализовано уже сейчас.

BugM
22.09.2026 15:14Перепишите в стать более понятно. Сейчас совершенно непонятно.
Менеджер паролей и автозаполнение в российском контейнере отключены — если нельзя доказать безопасное разделение, лучше перестраховаться.
Это вводит в заблуждение

Goudron Автор
22.09.2026 15:14Спасибо, исправлю это. После релиза будет более подробно техническая часть прописана в отдельной публикации.
RTFM13
А отдельный профиль не решает туже проблему?
Возможно я невнимательно пролистал статью, но в тэгах opensource, но ссылки на гитхаб нет. Скрепная символика тоже настораживает.
Goudron Автор
Пока что анонс. Код ещё не выложен. Где-то 27 сентября ожидается. После этого будет более подробная статья. Нет, профиль не решает, между профилями нужно переключаться. Суть в том, чтобы разделить эти две истории, но в одном окне. Что касается "доброго мишки" - это как раз про Россию с человеческим лицом, где не забывают о конфиденциальности :)
RTFM13
Отдельные окна дисциплинируют. И выглядят надёжнее. Еще и темы разные поставить чтоб не путать.
Т.е. задача сводится к добавлению изоляции сертификатов в штатные контейнеры? Это разве не задача нейронке на один промпт?
К.м.к. игра не стоит свеч. Но вам всё равно удачи, если декларироемые цели соответствуют действительным.
Что мне не нравится в профилях - в кедах они смешиваются на панели задач. Иконки для запуска разные, но открытые окна падают в одну кучу. Вот бы разделить их там и было бы идеально.
Goudron Автор
Нет, там сложнее. Не два, а три контекста работы браузера, например. Сценарии автоматического переноса в отдельный контейнер таких сайтов. Организация полноценной работы с сертификатными цепочками Минцифры. Да, используются встроенные контейнеры, но разделение сильнее. И это пока что версия 1.0, которая скоро выйдет. Есть планы на дальнейшее развитие. При этом хочется оставить браузер свободным, т.е. с открытым кодом. Не как в другом российском браузере, который, хотя и бесплатный, но проприетарный :) Хочется добавить конкуренции :)
RTFM13
Это тоже потенциальная дыра кстати.
Goudron Автор
Да, добавление сценариев - это потенциальное расширение поверхности атаки. Так всегда. Вообще в исходниках Firefox порядка 1,6 млн файлов, папка проекта порядка 100 ГБ. На производительном сервере сборка занимает часа 1,5. На среднем ноуте - больше суток. На одну попытку. Одним промтом такие продукты не создаются. Попробуйте :)
RTFM13
Не в этом смысле потенциальная. Переход по ссылке из нидерландов в рф палит VPN и позволяет связать профили. Ссылки должны открываться в том же контейнере строго.
Кстати, кроме сертификатов хорошо бы еще и сетевые настройки разделять.
Goudron Автор
Оно не в том же профиле вообще не открывается. Политика отправки 0 байтов на сервер до начала открытия в правильном контейнере.
Goudron Автор
Что касается сетевых настроек - это уже другой сценарий, не про сертификаты и не про разделение контекстов браузера. Да, важная тема, я над ней думаю.