0
<< предыдущая заметка 
18 августа 2026
сертификаты Минцифры

Россия переходит на свои сертификаты, браузер не открывает сайт банка. Так заставляют установить сертификат Минцифры или российский браузер. Что делать, если я не хочу менять привычный уклад?

1. Завести специальный ноутбук или анально-огороженную виртуалку. Но мы же не хотели менять привычный уклад, помните?

2. Можно без сертификата! Браузерам в банках (политика HSTS) запрещено небезопасное соединение даже если хочется, кнопки «все равно перейти» нет. Но я обнаружил, что в режиме «инкогнито» HSTS не действует: там останется «дополнительные настройки — перейти на сайт (небезопасно)». Самый простой вариант.

3. Сейчас и на будущее ограничить сертификат Минцифры банком или Россией. Минцифры же не замышлял подменять сертификаты чужих стран, лишь по случайности сертификат действует для всех зон планеты. Поможем сертификату Минцифры, не дадим повода всяким либеральнам фантазировать, будто когда-нибудь планировалось подменить google.com и revolut.com, чтоб браузер не заметил. Вкладываем Минцифру в собственный корневой сертификат, добавляем ограничения, подписываем. Это легальная операция, она не меняет сертификат Минцифры.

Ниже для Linux (Windows у меня нет, но там аналогично, нейросеть подскажет). Ставим инструменты, качаем Минцифру с Госуслуг:

sudo apt install libnss3-tools openssl curl
mkdir -p ~/mincifry && cd ~/mincifry
curl -fsSO https://gu-st.ru/content/lending/russian_trusted_root_ca_pem.crt

Разрешаем .ru, .su и .рф (xn--p1ai):

cat > ext.cnf <<'EOF'

[req]
distinguished_name=dn
x509_extensions=ext
prompt=no

[dn]
CN=Constrained Mincifry anchor
O=local trust

[ext]
basicConstraints=critical,CA:TRUE
keyUsage=critical,keyCertSign,cRLSign
subjectKeyIdentifier=hash
nameConstraints=critical,permitted;DNS:.ru,permitted;DNS:.su,permitted;DNS:.xn--p1ai,excluded;IP:0.0.0.0/0.0.0.0,excluded;IP:0:0:0:0:0:0:0:0/0:0:0:0:0:0:0:0

EOF

Лично я разрешил только Авангард и Сбер, у меня строка выглядит так:


nameConstraints=critical,permitted;DNS:avangard.ru,permitted;DNS:sberbank.ru,permitted;DNS:sbrf.ru,excluded;IP:0.0.0.0/0.0.0.0,excluded;IP:0:0:0:0:0:0:0:0/0:0:0:0:0:0:0:0

Создаем свой корневой сертификат и переподписываем им Минцифру:

openssl genrsa -out anchor.key 4096
chmod 600 anchor.key
openssl req -x509 -new -nodes -key anchor.key -sha256 -days 3650 -out anchor.crt -config ext.cnf
openssl req -new -key anchor.key -out dummy.csr -config ext.cnf

openssl x509 -in russian_trusted_root_ca_pem.crt -pubkey -noout > root.pub
openssl x509 -req -in dummy.csr -CA anchor.crt -CAkey anchor.key -CAcreateserial \
-force_pubkey root.pub -days 3650 -sha256 \
-subj "/C=RU/O=The Ministry of Digital Development and Communications/CN=Russian Trusted Root CA" \
-extfile ext.cnf -extensions ext -out root-constrained.crt

Ставим оба сертификата: свой доверенный, Минцифра обычный. Браузер сейчас должен быть закрыт, иначе он затрёт изменения при выходе:


# Firefox
P=~/.mozilla/firefox/$(grep -m1 '^Path=' ~/.mozilla/firefox/profiles.ini | cut -d= -f2)
certutil -d sql:$P -A -t "C,," -n "Constrained anchor" -i anchor.crt
certutil -d sql:$P -A -t ",,"  -n "Russian Trusted Root CA (constrained)" -i root-constrained.crt

# Chrome
certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n "Constrained anchor" -i anchor.crt
certutil -d sql:$HOME/.pki/nssdb -A -t ",,"  -n "Russian Trusted Root CA (constrained)" -i root-constrained.crt

Открываем браузер, ошибка на сайте банка должна исчезнуть.

Сертификаты банков на 3 месяца, но повторять не придётся: ограничен корень, а не сертификат. Сегодня требуют сертификат Минцифры только банки, и то не все — Т-Банк, Райффайзен, Совкомбанк, Газпромбанк пока не требуют. Все прочие сайты на сертификат Минцифры пока не перешли, но мы же понимаем: Old Charlie stole the handle and the train won`t stop going — no way to slow down.

Cсылки:
https://claude.ai/code/artifact/7f15610a-4be9-44c0-bee2-1f1d0b149140
https://habr.com/ru/articles/1071256/

UPD: Оказалось, в Chrome и Edge есть возможность задать ограничение без переподписи сертификата, у Firefox нет, так что способ остаётся единственным. Зато он работает во всех браузерах.

<< предыдущая заметка  
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок

Комментарии к этой заметке скрываются - они будут видны только вам и мне.

Оставить комментарий