Через месяц у владельцев старых телефонов начнут возникать определённые технические проблемы с посещением кучи сайтов. Проблема коснётся далеко не только телефонов, но это будет самое массовое проявление.
Upd (31.12.2020): сначала перенесли на осень, потом на январь 2021, а теперь и вовсе план изменился: потенциально проблемы начнутся с февраля 2021, но владельцы сайтов смогут переключиться на альтернативную цепочку и отсрочить проблемы для своих клиентов ещё на 3 года. Технические подробности.
Кто сразу хочет технических деталей про корневые сертификаты, кросс-подписи и т.д. — основная суть и ссылки для самостоятельного изучения есть ниже. А сейчас о том, что делать простым пользователям.
Яблочная дискриминация
Я мало знаю о мире iOS. На основании того, что сейчас нашёл в интернетах — похоже, проблемы будут на iOS 9 и ниже. Решать проблему там тоже можно импортом сертификата, но про это инструкцию напишет кто-то другой, лучше знакомый с iOS.
Так что дальше — только про Android.
Как проверить, возникнет ли проблема
На Android 7 и ниже проблема, вероятно, будет. На Android 9 и выше — практически точно не будет. Но вообще зависит от производителя — как он готовил для конкретного телефона Android, как обновлял.
Много где предлагают зайти на специальный тестовый сайт — https://valid-isrgrootx1.letsencrypt.org/. Откроется молча — проблем вероятнее всего не возникнет, пожалуется на безопасность — проблемы через месяц начнутся.
На деле всё хитрее, и это самое «вероятнее всего» дало ложный ответ на трёх старых устройствах у меня дома.
Надёжная проверка — это найти в настройках телефона, в разделе «Безопасность», «Другие параметры безопасности» (но вообще в зависимости от производителя путь может отличаться) примерно вот такой блок:
Запомните, как вы сюда пришли — скоро может понадобиться. А сейчас идём в «Сертификаты безопасности», видим километровый список, и ищем в нём вот такую запись (благо, список алфавитный):
Нашли — ладушки, можете дальше не читать. Вас проблема не коснётся.
Что делать
Если запись, указанную выше не нашли — можете решить проблему сейчас, заранее, а можете через месяц и позже, когда постепенно некоторые сайты у вас на телефоне начнут не открывается, жалуясь на небезопасность.
- Скачать на телефон вот этот файл: https://letsencrypt.org/certs/isrgrootx1.pem.txt (по тапу откроется что-то страшное, но вы вместо этого подержите долго на этой ссылке и скажите «Сохранить»).
- В любом файл-менеджере переименовать его в «isrgrootx1.pem» (удалить в конце «.txt»).
- Заново открыть то меню, которое находили выше, и там выбрать «Установить из памяти» (может быть «Установить с SD» или ещё как-то так).
- Указать на тот самый файл «isrgrootx1.pem»
- Если имя в диалоге импорта не указано — можете указать любое, это ни на что не влияет, но вот «Используется для» оставьте как есть.
- Если на телефоне не настроена никакая блокировка — придётся её установить (на Android 6 и выше потом можно будет отключить).
- Поздравляю! Теперь вы некрофил с сертификатом! ;)
Можете проверить, что всё успешно — ещё раз идём в то же самое меню в настройках, там снова «Сертификаты безопасности», но не листаем этот гигантский список, а переключаемся на вторую вкладку «Пользователь» и видим там результат:
Теперь, если хочется, можно отключить блокировку телефона. В момент отключения предупредят о том, что «Все зашифрованные данные будут удалены» — но сертификат должен остаться. Лучше проверьте после этого ещё раз, что он на месте. К сожалению, на Android 5 отключить блокировку не выйдет.
И не удивляйтесь, что теперь после каждой загрузки телефона вас будут пугать слежкой — это нормальное поведение после установки стороннего сертификата:
Технические детали
8 июля Let’s Encrypt начнёт выдавать сертификаты только с цепочкой до своего CA — Internet Security Research Group (ISRG), но без кросс-подписи (как выдают сейчас) от Identrust (DST). Если на устройстве нет корневого сертификата ISRG — сайты, использующие Let’s Encrypt начнут, по мере перевыпуска своих сертификатов (максимум — 3 месяца, хотя большинство обновляют раз в ~2 месяца) для владельцев таких устройств превращаться в тыкву разных размеров (иногда можно будет в браузере сказать «я на всё согласен, даже если это небезопасно», иногда — нет).
Ну а корневой сертификат ISRG покрыл все основные платформы только к августу 2018. Например, на валяющихся у меня под рукой телефонах с Android 7 и ниже его нет. Про 8 — ничего не могу сказать, да и от вендора (и выпуска им обновлений безопасности) будет зависеть.
Проблема гораздо шире, и хорошо описана в статье The Impending Doom of Expiring Root CAs and Legacy Clients (ну или в шустренько сляпанном сильно сокращённом переводе-изложении, выдаваемом за свой текст).