Установка Российских корневых сертификатов в Ubuntu Linux

Как говорится, “Родина тебя не забудет!” 

Родина тебя не забудет!
А государство даже не вспомнит…

Мы довольно долго смеялись над Казахстаном с их попытками пропихнуть свой корневой сертификат который все корневые центры сертификации экстренно отозвали. Наши ребята пошли окольными путями и начали блокировать часть гос-сервисов и для доступа к ним теперь надо или браузер специальный ставить (отбитый на всю голову еще и с модулями наблюдения которые Атом или Яндекс.Браузер) или ставить сертификаты корневые и конечно же не вызывающие подозрений – Российские от МинЦифры. Выбора особо не оставили, да мне и по работе эти чертовы сертификаты нужны, посему погнали попробуем завести эту шайтан-машину.

Если вы не страдаете паранойей это не значит, что за вами не следят

Самое простое и не вызывающее вопросов добавить сертификаты в браузер

Инструкция у нас тут живет https://www.gosuslugi.ru/crt Выглядит достоверной и будем её использовать как план и его придерживаться и нам понадобятся два сертификата.

По сертификатам вообще абсолютно не интересует какой дистрибутив, они логинно абсолютно одинаковые и скачиваются из одной хранилки, посему качаем смотрим что и как по информации в сертификатах.

$ openssl x509 -text -noout -in ./russian_trusted_root_ca_pem.crt
$ openssl x509 -text -noout -in ./russian_trusted_sub_ca_pem.crt

Теперь добавляем сертификамы минцифры в браузер, в моем случае в Chrome.

Переходим: Настройки -> Конфиденциальность и безопасность -> Безопасность -> Настроить сертификаты.

Добавляем скачанные сертификаты в “Центры сертификации”.

В результате получается вот так.

И вот теперь у нас Сбер-ID работает в Linux в браузере Chrome и можно зайти на любой сайт поддерживающий Сбер-ID в браузере. Но это полумеры и давайте немного изврата и добавим сертификаты в доверенные на уровне системы.

Добавляем корневые сертификаты на уровне системы

А вот теперь немного хардкорчику вам на почитать и для начала мы проверяем курловым запросом всзаимодействие например с id-psi.sber.ru: 

$ curl https://online.sberbank.ru/CSAFront/oidc/authorize.do?#/
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

Волне предсказуемая ошибка сертификата и сейчас нам требуется выяснить, что именно ему надо.

$ openssl s_client -showcerts -servername online.sberbank.ru -connect online.sberbank.ru:443 2>/dev/null | openssl x509 -inform pem -noout -text

Дальше устанавливаем сертификаты Минцифры в доверенное хранилище сертификатов:

# apt-get install -y ca-certificates
# cp ./russian_trusted_root_ca_pem.crt /usr/local/share/ca-certificates
# cp ./russian_trusted_sub_ca_pem.crt /usr/local/share/ca-certificates
# update-ca-certificates

Вот собственно и все. 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *