Настройка ГОСТ TLS-шифрования
Термины и определения
ГОСТ TLS — реализация международного протокола TLS (Transport Layer Security), которая использует российские криптографические стандарты: ГОСТ Р 34.12-2015 (шифрование) и ГОСТ Р 34.10-2012 (электронные подписи), для обеспечения безопасного соединения.
AS (Автономная система) — группа IP-сетей и маршрутизаторов под единым управлением, имеющая свою политику маршрутизации и уникальный номер (ASN).
КриптоПро — средство криптографической защиты информации (СКЗИ).
Дополнительная документация
Настройка ГОСТ TLS-шифрования на сервере VK WorkSpace — в инструкции описано, как включить и выключить ГОСТ TLS-шифрование на сервере Почты VK WorkSpace.
Назначение документа
В инструкции описано, как включить и выключить ГОСТ TLS-шифрование на сервере Мессенджер и ВКС. ГОСТ Настройка TLS-шифрования обеспечивает поддержку российских криптографических стандартов для шифрования трафика между Супераппами VK WorkSpace.
Важно
Не вносите изменения в настройки контейнеров для работы ГОС- TLS-шифрования. При внесении изменений шифрование может не работать.
Предварительные условия
-
До настройки ГОСТ TLS-шифрования приобретите лицензию на право использования СКЗИ «КриптоПро CSP» версии 5.0 для одного TLS-сервера. Лицензия позволяет осуществлять подключение к серверу по зашифрованному протоколу. Лицензионный ключ понадобится вам на шаге 3.
-
Приобретите сертификат ГОСТ TLS. Это можно сделать с помощью инструкций на сайте УЦ КриптоПро или по инструкции Национального удостоверяющего центра.
Ниже представлен список поддерживаемых Issuer:
-
C=RU, O=The Ministry of Digital Development and Communications, CN=Russian Trusted Root CA
-
ОГРН=1037700085444, ИНН=007717107991, C=RU, S=Moscow, L=Moscow, O="LLC ""Crypto-Pro""", CN=CryptoPro GOST Root CA
-
C=RU, O=The Ministry of Digital Development and Communications, CN=Russian Trusted Root CA
-
CN=НУЦ России, O=Минцифры России, ИНН ЮЛ=7710474375, ОГРН=1047702026701, C=RU, L=г. Москва, S=77 г.Москва, STREET="Набережная Пресненская, дом 10, строение 2"
-
E=dit@digital.gov.ru, C=RU, S=77 Москва, L=г. Москва, STREET="Пресненская набережная, дом 10, строение 2", O=Минцифры России, ОГРН=1047702026701, ИНН ЮЛ=7710474375, CN=Минцифры России
-
E=dit@minsvyaz.ru, C=RU, S=77 Москва, L=г. Москва, STREET="улица Тверская, дом 7", O=Минкомсвязь России, ОГРН=1047702026701, ИНН=007710474375, CN=Минкомсвязь России
Также при создании сертификата одним из этапов будет создание файла .cnf. Он потребуется для дальнейшего создания сертификата.
В нем должно быть указано:
- В значении CN — имя основного домена вашей инсталляции Мессенджера VK WorkSpace.
-
В значении subjectAltName — имена доменов и поддоменов инсталляции, например: {domain}, *.{domain}. Если планируется использование Мессенджера VK WorkSpace вместе с Почтой VK WorkSpace, добавьте также почтовые домены.
Если для обеспечения безопасности требуется указать весь список поддоменов, добавьте следующие поддомены:
- admin.{domain}
- akesadmin.{domain}
- api.{domain}
- calendar-mobile.{domain}
- calendar.{domain}
- call.{domain}
- dl.{domain}
- files-n.{domain}
- kc.{domain}
- notp.{domain}
- outlook-plugin.{domain}
- rapi.{domain}
- s.{domain}
- stentor.{domain}
- u.{domain}
- ub.{domain}
- webim.{domain}
-
В значении certificatePolicies — СКЗИ класса KC1 — 1.2.643.2.25.1.14.2, 1.2.643.100.113.1.
-
-
Настройка ГОСТ TLS-шифрования доступна начиная с версии Мессенджер и ВКС 25.4 и выше. Обновите инсталляцию на одну виртуальную машину по инструкции https://biz.mail.ru/docs/on-premises/vk-teams/1vm-upgrade-guide/index.html. Если у вас распределенная инсталляция, обратитесь за помощью в техническую поддержку.
-
Убедитесь, что до настройки ГОСТ TLS-шифрования для параметра «Список доменов для ГОСТ TLS-шифрования» указан пустой список:
4.1 Перейдите в веб-интерфейс установщика VK WorkSpace по адресу
http://<company_domain>:8888.4.2 На главной странице нажмите Проекты и выберите vkteams.
4.3 В списке настроек нажмите на gost и проверьте, что значения для параметра «Список доменов для ГОСТ TLS-шифрования» не указаны. Если параметр указан, то очистите поле и укажите «[]».
4.4 Нажмите Сохранить настройки.
4.5 На главной странице в строке состояния установки нажмите на кнопку меню и выберите Запустить проверку.
После завершения проверки запустите автоустановку.
Или на главной странице в веб-интерфейсе установщика нажмите на VK Teams для просмотра списка ролей. В списке ролей найдите роли myteam-config-json и myteam-admin, перейдите в настройки каждой роли, нажав
, и запустите шаг up_container для применения изменений. -
Если настроена интеграция с Почтой VK WorkSpace, получите от администратора Почты следующие данные для интеграции по сети:
-
IP-адрес интерфейса пира.
-
IP-адрес BGP-пира.
-
Номер AS пира.
-
Префиксы импортируемых сетей.
-
IP-адреса DNS VK WorkSpace.
-
-
Получите от представителей VK ссылки для скачивания клиентского приложения на iOS.
Как включить ГОСТ TLS-шифрование
Шаг 1. Настройте интеграцию с Почтой VK WorkSpace через BGP
Пропустите этот шаг, если:
-
у вас нет Почты VK WorkSpace
-
есть Почта VK WorkSpace, но интеграция с Мессенджер и ВКС не настроена.
Чтобы настроить интеграцию:
-
Перейдите в веб-интерфейс установщика VK WorkSpace по адресу
http://<company_domain>:8888. -
На главной странице нажмите Проекты и выберите vkteams.
-
В списке настроек нажмите на Настройки интеграций с Почтой через BGP и заполните параметры для подключения и нажмите Сохранить настройки.
где:
-
interop -- включение/выключение интеграции сетей с VK WorkSpace.
-
import_prefix -- префиксы импортируемых сетей. По умолчанию — 172.0.0.0/8.
-
local AS number -- локальный пир, по умолчанию — 64501.
-
list of peer AS -- массив удаленных пиров, номер автономной сети.
-
list of peer IPs -- массив удаленных пиров, IP-адрес пира.
-
WS internal DNS ip list -- массив IP-адресов DNS VK WorkSpace. У локального пира IP-адрес нужно указывать только, если Мессенджер развернут на одной виртуальной машине.
-
Шаг 2. Добавьте Ansible Playbook
-
На главной странице Устнановщика нажмите Добавить и выберите Несколько Ansible Playbook.
-
В таблице с ролями выберите ansible-vkteams-bird.
-
Выберите гипервизор на котором развернут Мессенджер и ВК ВС и установите режим генерации На каждом сервере.
-
Нажмите кнопку Добавить.
-
На главной странице, в строке состояния установки, нажмите на кнопку меню и выберите Запустить проверку. После завершения проверки запустите автоустановку.
Шаг 3. Включите ГОСТ TLS-шифрование в продуктах
-
На главной странице Устнановщика нажмите
и выберите Продукты. -
Перейдите на вкладку Мессенджер и включите опцию Поддержка Российских криптографических стандартов (ГОСТ TLS).
-
На главной странице нажмите Проекты и выберите vkteams.
-
В списке настроек нажмите на ГОСТ, заполните поля данными сертификата и нажмите Сохранить настройки.
-
Внизу главной страницы Установщика нажмите Добавить и выберите Распределение продуктов Helm.
-
В форме с настройками в каждой секции укажите «Кластер K8s» и нажмите Сохранить.
-
На главной странице, в строке состояния установки, нажмите на кнопку меню и выберите Запустить проверку. После завершения проверки запустите автоустановку.
Или на главной странице в веб-интерфейсе установщика нажмите на vkteamsGost для просмотра списка ролей. Перейдите в настройки роли nginx-gost и запустите шаг up_container для применения изменений.
Шаг 4. Обновите клиентские приложения
Начиная с версии 25.4 клиентские приложения при подключении к серверу могут использовать как стандартные алгоритмы шифрования (RSA, ECDHE и т. д.), так и ГОСТ-алгоритмы.
После настройки ГОСТ TLS-шифрования на сервере все клиентские приложения, не поддерживающие работу по ГОСТ TLS, перестанут работать. У пользователей будет отображаться предупреждение, что нет связи с сервером, даже если на устройстве есть интернет.
Примечание
Такое поведение так же может соответствовать не обновленному приложению или отсутствию на устройстве пользователя нужных библиотек.
Чтобы клиентские приложения работали после настройки ГОСТ TLS-шифрования на сервере, выполните следующее:
-
На все компьютеры и ноутбуки, на которых пользователи будут пользоваться десктоп-версией клиентского приложения (Windows, macOS, Linux), скачайте и установите СКЗИ «КриптоПро CSP» версии 5.0R3 или выше. Скачать можно по ссылке https://www.cryptopro.ru/downloads
Важно
Эксплуатация СКЗИ должна осуществляется в соответствии с правилами, изложенными в документации на изделие.
-
Обновите Суперапп VK WorkSpace:
-
Десктоп-версии клиентского приложения обновите до версии 25.4 и выше.
-
Пользователям Android необходимо скачать приложение с RuStore. Клиентские приложения, скачанные с Google Play не содержат себе библиотеку шифрования ГОСТ TLS.
-
Пользователям с iOS необходимо скачать приложение с DL-лендинга.
-
Для пользователей, которые будут пользоваться веб-версией, установите Яндекс Браузер — в него уже встроены необходимые сертификаты. Также можно использовать браузер Chromium-Gost.
-
DL-лендинг для дистрибуции клиентских приложений
Для дистрибуции клиентских приложений, поддерживающих ГОСТ-алгоритмы шифрования, используется специальный лендинг.
DL-лендинг поддерживает динамическую смену списка страниц в TestFlight. Таким образом DL предоставляет возможность оставлять только актуальные ссылки на TestFlight.
Как поменять ссылки на лендинге на iOS приложение:
- Открыть или создать файл dl-config.json в корневой директории GOST-DL: /srv/myteam-onpremise-www-gost/htdocs.
- В dl-config.json, в переменную-массив ios-build-links добавить ссылки на скачивание iOS приложения (например через TestFlight). Ссылки получите у представителей VK.
- На DL будут отображены все ссылки из массива списком. Если массив пустой, секция iOS в DL будет содержать стандартную ссылку на приложение в магазине приложений.
Если надо ускорить обновление приложений пользователями
Чтобы ускорить переход пользователей на новую версию на Android и iOS, включите отображение на мобильных устройствах баннера с предложением скачать новую версию:
Данная функциональность доступна в версии 25.4 и выше.
Для этого:
-
Перейдите в веб-интерфейс установщика VK WorkSpace по адресу
http://<company_domain>:8888. -
На главной странице нажмите Проекты и выберите vkteams.
-
В списке настроек нажмите на ГОСТ и выполните настройки:
-
установите переключатель «Ускоренное обновление приложений» в активное положение.
-
заполните поле «Ссылка для скачивания ГОСТ-сборки приложения».
-
-
Нажмите Сохранить настройки.
-
На главной странице в веб-интерфейсе установщика нажмите на vkteamsGost для просмотра списка ролей.
-
Перейдите в настройки nginx-gost и запустите шаг up_container для применения изменений.
Шаг 5. Включите использование ГОСТ TLS-шифрования на клиентских приложениях
-
Перейдите в веб-интерфейс установщика VK WorkSpace по адресу
http://<company_domain>:8888. -
На главной странице нажмите Проекты и выберите vkteams.
-
В списке настроек нажмите на gost.
-
Укажите для параметра «Список доменов для ГОСТ TLS-шифрования» список доменов, для которых будет использоваться ГОСТ TLS-шифрование. Домены указываются в виде регулярных выражений. Если домен соответствует хотя бы одному регулярному выражению в списке , то будет использоваться ГОСТ TLS-шифрование. Во всех остальных случаях будут использоваться стандартные алгоритмы.
-
Нажмите Сохранить настройки.
-
На главной странице в строке состояния установки нажмите на кнопку меню и выберите Запустить проверку. После завершения проверки запустите автоустановку.
Или на главной странице в веб-интерфейсе установщика нажмите на VK Teams для просмотра списка ролей. Перейдите в настройки роли myteam-admin, и запустите шаг up_container для применения изменений.
Примеры:
| Пример заполнения | Описание |
|---|---|
[] |
Клиент будет использовать только стандартные алгоритмы шифрования |
[".*"] |
Клиент будет использовать только ГОСТ TLS-шифрование — при запросах к vkt.mycompany.ru и запросах к любым другим ресурсам в интернете |
["u.vkt.mycompany.ru", "ub.vkt.mycompany.ru"].["(u|ub).vkt.mycompany.ru"]. |
ГОСТ TLS-шифрование будет использоваться в запросах к доменам u.vkt.mycompany.ru и ub.vkt.mycompany.ru |
[".*vkt.mycompany.ru$"]. |
ГОСТ TLS-шифрование будет использоваться в запросах к vkt.mycompany.ru и ко всем его поддоменам (включаем шифрование на уровне инсталляции) |
["(?!.*bot).*vkt.mycompany.ru"]. |
ГОСТ TLS-шифрование будет использоваться в запросах к vkt.mycompany.ru и его поддоменам, кроме bot.vkt.mycompany.ru (и его поддоменов) |
Примечание
Можно обойтись одним регулярным выражением для любого списка доменов, но рекомендуется разбивать список на разные элементы для лучшей читаемости и удобства изменения.
Как проверить, что ГОСТ TLS-шифрование работает
В декстоп-версии клиентского приложения в разделе сервисов рядом с кнопкой настроек отображается иконка с надписью «Защищенное соединение по ГОСТ».
В мобильных версиях приложения вверху экрана отображается надпись «Защищенное соединение по ГОСТ».
В логах клиентских приложений есть строки «start vkgostproxy with gost hosts: ["u.vkt.mycompany.ru", "ub.vkt.mycompany.ru"]» и «gost support is enabled» (в пределах 5-10 строк друг от друга).
Как выключить ГОСТ TLS-шифрование
Шаг 1. Выключите ГОСТ TLS-шифрование на сервере Мессенджер и ВКС
-
Перейдите в продукты на вкладку Мессенджер и выключите опцию Поддержка Российских криптографических стандартов (ГОСТ TLS).
-
На главной странице в веб-интерфейсе Установщика нажмите на VK Teams для просмотра списка ролей.
-
В списке ролей найдите роли istio-ingress и apigw, перейдите в настройки ролей и запустите для каждой роли шаг up_container для применения изменений.
Шаг 2. Выключите ГОСТ TLS-шифрование на сервере VK WorkSpace
Пропустите этот шаг, если у вас нет Почты VK WorkSpace.
Если у вас есть Почта, выключите ГОСТ TLS-шифрование на сервере VK WorkSpace по инструкции.
Шаг 3. Выключите использование ГОСТ TLS-шифрования на клиентских приложениях
-
Перейдите в веб-интерфейс установщика VK WorkSpace по адресу
http://<company_domain>:8888. -
На главной странице нажмите Проекты и выберите vkteams.
-
В списке настроек нажмите на gost и для параметра «Список доменов для ГОСТ TLS-шифрования» укажите «[]».
-
Нажмите Сохранить настройки.
-
На главной странице, в строке состояния установки, нажмите на кнопку меню и выберите Запустить проверку. После завершения проверки запустите автоустановку.
Или на главной странице в веб-интерфейсе установщика нажмите на VK Teams для просмотра списка ролей. Перейдите в настройки роли myteam-admin и запустите шаг up_container для применения изменений.





