Никому не хочется постоянно проверять новую версию браузера Chromium-Gost. Он же не умеет сам себя обновлять или обновляться вместе с системой (повествую в рамках системы Debian). И ведь для этого надо посмотреть какая текущая версия установлена, это в меню «О программе», потом пойти на сайт разработчиков, там глазами среди множества строчек найти свой пакет deb и сравнительным образом высмотреть, а не надо ли его обновить. Если вдруг надо, то скачать его. Потом запустить установку обновления. А в завершении удалить скаченный установочный пакет.
— А можно делать обновление ручками еженедельно?
— Можно. А зачем?
Вот пусть оно само и делается. Например, еженедельно. Если неделю не включали комп, он всё равно посмотрит, если больше 7 дней прошло, то при включении и обновит. Всего-то делов.
Вот я и сделал себе скрипт, для своей виртуальной машины, пусть там где и надо, там и обновляется.
Представляю скрипт для вашей виртуальной машины, где вы будете наслаждаться криптографией по ГОСТу в браузере Chromium-Gost:
📌 Клик здесь и откроете скрипт 😉
#!/bin/bash
###############################################################################
# Алгоритм:
# Получить последнюю доступную версию с сайта.
# Получить установленную версию (если пакет установлен).
# Сравнить: если установленная версия соответствует последней (или новее),
# то выйти с сообщением, иначе скачать и установить.
# Также учитытывается, что пакет может быть не установлен — тогда установка всегда нужна.
###############################################################################
# Как сделать всё автоматически?
# Скопируйте скрипт в /usr/local/bin/update_chromium_gost.sh и сделайте его исполняемым:
# sudo chmod +x /usr/local/bin/update_chromium_gost.sh
# Создайте файл /etc/anacrontab (от root) или добавьте в существующий:
# sudo nano /etc/anacrontab
# Добавьте строку:
# # Период в днях, задержка в минутах, идентификатор, команда
# 7 5 update-chromium /usr/local/bin/update_chromium_gost.sh
# где,
# 7 — запускать раз в 7 дней (если прошло 7+ дней с последнего запуска).
# 5 — задержка перед запуском (0 минут, можно поставить 5, чтобы система успела загрузиться).
# update-chromium — уникальный идентификатор.
# Команда — полный путь к скрипту.
###############################################################################
BASE_URL="https://update.cryptopro.ru/chromium-gost/"
TMP_DIR="/tmp"
# Функция для получения установленной версии пакета chromium-gost (любое имя)
get_installed_version() {
# Ищем установленные пакеты, начинающиеся с chromium-gost
local pkg=$(dpkg-query -W -f='${Package}\n' 2>/dev/null | grep -E '^chromium-gost')
if [ -n "$pkg" ]; then
# Получаем версию этого пакета
local full_version=$(dpkg-query -W -f='${Version}\n' "$pkg" 2>/dev/null)
# Извлекаем основную версию (всё до первого дефиса)
echo "$full_version" | cut -d'-' -f1
else
echo ""
fi
}
# Получаем последнюю доступную версию с сайта
echo "Поиск последней версии пакета chromium-gost для Linux..."
LATEST_VER=$(curl -s "$BASE_URL" | grep -oP 'chromium-gost-\K[0-9.]+(?=-linux-amd64\.deb)' | sort -V | tail -n1)
if [ -z "$LATEST_VER" ]; then
echo "Ошибка: не удалось определить версию пакета на сайте."
exit 1
fi
echo "Последняя версия на сайте: $LATEST_VER"
# Получаем установленную версию
INSTALLED_VER=$(get_installed_version)
if [ -n "$INSTALLED_VER" ]; then
echo "Установленная версия: $INSTALLED_VER"
else
echo "Пакет chromium-gost (любого варианта имени) не установлен."
fi
# Сравниваем версии
if [ -n "$INSTALLED_VER" ] && [ "$(printf '%s\n%s' "$LATEST_VER" "$INSTALLED_VER" | sort -V | tail -n1)" = "$INSTALLED_VER" ]; then
echo "У вас уже установлена актуальная версия (или новее). Обновление не требуется."
exit 0
fi
echo "Требуется обновление. Будет установлена версия $LATEST_VER."
# Формируем имя файла
FILENAME="chromium-gost-${LATEST_VER}-linux-amd64.deb"
# Скачиваем файл
echo "Скачивание $FILENAME в $TMP_DIR..."
curl -L -o "$TMP_DIR/$FILENAME" "${BASE_URL}${FILENAME}"
if [ $? -ne 0 ] || [ ! -f "$TMP_DIR/$FILENAME" ]; then
echo "Ошибка: не удалось скачать файл."
exit 1
fi
# Устанавливаем пакет
echo "Установка пакета..."
dpkg -i "$TMP_DIR/$FILENAME"
# Исправляем зависимости
echo "Проверка и исправление зависимостей..."
apt-get install -f -y
# Очистка
rm -f "$TMP_DIR/$FILENAME"
echo "Готово! Браузер chromium-gost обновлён до версии $LATEST_VER."
И пожалуйста, используйте виртуальную машину для экспериментальных программ таких как Chromium-Gost (вас предупредили).
Что такое Chromium-Gost
По сути, это тот же браузер Chromium с открытым исходным кодом, но в него добавлена поддержка российских криптографических стандартов (ГОСТ), что позволяет ему корректно открывать сайты с «российским шифрованием». Это стало необходимым, так как обычные браузеры (мой любимый FireFox) эти алгоритмы не поддерживают. А про Яндекс-браузер в этот раз умолчу.

Визуально он не отличается от обычного Chromium, а главное изменение заключается в том, как он устанавливает защищённые соединения: он делает это не через стандартную библиотеку BoringSSL, а через прослойку msspi.
📌 Клик здесь, если интересно про msspi
Идея с msspi довольно элегантна: она создаёт «прослойку»-переводчик между браузером и системой. Благодаря этому браузер может использовать криптографию, установленную на вашем компьютере, и это главный ключ к пониманию того, как в Chromium появляется поддержка ГОСТ.
Если объяснять на примере Linux, логика работы такая:
Стандартный подход (BoringSSL): Обычно Chromium сам отвечает за шифрование через встроенную библиотеку
BoringSSL. Это быстро и удобно, но добавить в неё поддержку ГОСТ сложно, так как это потребует постоянной доработки под каждое обновление браузера.Подход Chromium-Gost (msspi): В этой сборке оригинальный механизм шифрования (
BoringSSL) заменяется на библиотекуmsspi. Она выступает в роли универсального переводчика: с одной стороны, она имитирует знакомый браузеру интерфейсOpenSSL(родственникBoringSSL). С другой — обращается к API операционной системы (например, кSChannelв Windows или через прослойку CAPIX в Linux), которое и берёт на себя всю работу с криптографией ГОСТ. Благодаря этому, браузер, «думая», что работает как обычно, на самом деле отправляет все задачи по шифрованию внешнему криптопровайдеру, например,КриптоПро CSP.
Для чего это было нужно: главная цель — универсальность. Вместо того чтобы встраивать поддержку всех возможных криптопровайдеров напрямую в браузер, разработчики создали стандартный «мост». Так браузер научился работать с любой криптографией, которая установлена в системе по правилам Windows (через интерфейс SSPI).
Но здесь кроются и главные риски:
Это сложный «микрокосмос»: Поддержка
msspiна Linux, где нет нативнойSSPI, — это результат трудоёмкой обратной разработки и создания «прослойки», что потенциально увеличивает количество ошибок и уязвимостей.Проблема с обновлениями:
msspi— это отдельный проект. Когда выходит новая версия Chromium с критическим исправлением уязвимости, разработчикамchromium-gostнужно сначала дождаться выхода и обновить сам браузер, а затем адаптировать к нему свою библиотекуmsspi. Именно из-за этой дополнительной работы и возникает та самая задержка с безопасностью. Вы получаете не просто обновления браузера, а сложный «слоёный пирог» из Chromium,msspiи системного криптопровайдера, каждый слой которого нужно поддерживать в актуальном и безопасном состоянии.
В чем же проблема?
Основная проблема — в модели распространения и обновлений. Проект Chromium-Gost не принадлежит компании «КриптоПро» и развивается энтузиастами и разработчиками на добровольных началах.

Стандартный Chromium постоянно обновляется, закрывая опасные уязвимости. Например, около 70% критических уязвимостей в Chromium — это ошибки работы с памятью. Исправления для них выходят очень часто.
Однако сборка Chromium-Gost отслеживает выход этих обновлений с большой задержкой, а иногда и вовсе их пропускает. Более того, на форумах пользователи сообщают, что даже при появлении новой версии, она часто содержит лишь упоминание «Обновление стабильной версии» без указания на исправление конкретных CVE-уязвимостей.
Используя Chromium-Gost на основной системе, вы, по сути, получаете браузер с «дырявой» основной версией Chromium, которую никто не спешит чинить. Подтверждение этому — официальные бюллетени безопасности, которые выходят в ответ на найденные уязвимости. Например, был выпущен бюллетень INFESA-2024:0002 для устранения нескольких критических уязвимостей в версиях Chromium до 128.0.6613.113.
Почему изоляция — не паранойя, а необходимость?
Всё это делает использование Chromium-Gost вне изолированной среды (например, виртуальной машины или отдельного контейнера) потенциально опасным. Даже его разработчики позиционируют проект как техническую демонстрацию, то есть доказательство возможности, а не как продукт для повседневного безопасного сёрфинга.
Виртуальная машина позволяет локализовать любой потенциальный вред в случае эксплуатации уязвимостей через вредоносный сайт, защитив вашу основную ОС.
Таким образом, отмеченный вами подход с использованием ВМ — это не просто предосторожность, а разумная и зачастую необходимая мера безопасности, когда речь идёт о доступе к государственным и критическим информационным системам. Если виртуальная машина будет работать достаточно быстро, это можно считать условно безопасным компромиссом.
Надеюсь, мне удалось пролить свет на этот вопрос.
P.S. Для себя я сделал виртуальную машину KVM с операционной системой Debian. Внутри ВМ установлено всё нужное для доступа к государственным сайтам, шифрование КриптоПро, электронный документооборот и отчётность Saby (Тензор, СБИС ранее), и этот самый «православный браузер Chromium-GOST», с ним необходимые плагины и драйвера и ключи электронной подписи.
Отдал 15Гб пространства на диске под это всё. Но освободил свой комп от постоянной работы на это "добро". Оно только RAM =2Гб и CUP =25% для себя забирает, и это в "лежачем состоянии". И что оно делает само по себе я не знаю. Поэтому место этому "добру" в виртуальной машине. Включил, подписал ЭП, выключил.
Детали этого кому интересны -- сигнализируйте в комментариях, и зачем вам такое обязательно расскажите.