30 сентября 2021 г окончился срок действия корневого сертификата IdenTrust DST Root CA X3. А это главный корневой сертификат Let's Encrypt, которым подписаны уже более 260 миллионов доменных имен в Интернет.
https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/
Let’s Encrypt — это бесплатный, автоматизированный и открытый Центр Сертификации. Это значит, что вы можете для своего сайта установить и автоматизировать обновление SSL сертификата, чтобы ваш сайт работал по HTTPS протоколу. Наш сайт тоже работает с сертификатом Let’s Encrypt.
Событие ожидаемое. Чтобы внезапно все 260 миллионов не перестали открываться в браузерах пользователей, Let’s Encrypt пять лет назад выпустила самоподписанный сертификат ISRG Root X1, который добавили в качестве второго корневого сертификата и образовали альтернативную цепочку.
Самоподписанный сертификат – это сертификат, который формируется без подтверждения стороннего центра сертификации.
На август 2021 эта схема богаче:
За пять лет сертификат ISRG Root X1 должен был распространиться по миру. Производители устройств, приложений и операционных систем должны были добавить этот сертификат в список доверенных корневых центров сертификации.
План был такой, если браузер не сможет проверить подлинность одной цепочки, то перейдёт на альтернативную. Что, собственно, вчера и произошло.
Всё бы хорошо, но не все системы поддерживают новый корневой сертификат ISRG Root X1. Поддержка есть:
- Windows >= XP SP3 (при автоматическом обновление корневых сертификатов)
- macOS >= 10.12.1
- iOS >= 10
- iPhone 5 и выше могут быть обновлены до iOS 10 с поддержкой сертификата ISRG Root X1
- Android >= 7.1.1 (но Android >= 2.3.6 [до непонятно какой версии] будет работать из-за специального шаманства)
- Mozilla Firefox >= 50.0
- Ubuntu >= xenial / 16.04 (с обновлениями)
- Debian >= jessie / 8 (с обновлениями)
- Java 8 >= 8u141
- Java 7 >= 7u151
- NSS >= 3.26
https://letsencrypt.org/docs/certificate-compatibility/#platforms-that-trust-dst-root-ca-x3
С андроидом я так и не понял, что именно будет работать, а что нет. в Android 6.0.1 у меня те сайты, сертификаты которых пошли по цепочке до IdenTrust DST Root CA X3, открылись, несмотря на то, что срок действия сертификата истёк. А те сайты, сертификаты которых пошли по цепочке до самоподписанного ISRG Root X1, не открылись, потому что его нет в списке доверенных.
Соответственно, все системы, которые не доверяют сертификату ISRG Root X1, будут открывать сайты с сертификатом Let's Encrypt вот так:
(Хм, а моему телефону, выходит, больше пяти лет...)
Даже Яндекс Вебмастер не смог распознать новую цепочку и ругнулся на мой сайт:
Пострадают:
- Владельцы старых устройств Apple, которые не могут обновиться на iOS 10.
- Владельцы старых версий Android < 7.1.1.
- Обладатели старых телевизоров со Smart TV и прочей техники, которые используют Интернет для работы или обновлений.
- Пользователи старых операционных систем.
- Старые приложения Java.
- Ещё что-нибудь старое, в котором корневые сертификаты зашиты намертво.
Что делать владельцам сайтов?
А ничего. Если вам очень нужно, чтобы ваш сайт открывался на старых устройствах, меняйте сертификат на платный, корневые центры которого ещё поддерживается на нужных вам устройствах.
Что делать посетителям сайтов?
Если ваше устройство поддерживает установку сертификатов, то вы можете вручную добавить самоподписанный сертификат ISRG Root X1 в список доверенных корневых центров сертификации:
https://letsencrypt.org/certificates/
Вам также может понадобиться промежуточный сертификат Let’s Encrypt R3. И тогда, после перезагрузки, вам наступит счастье: