Я работаю с сервером NodeJS с сертификатом SSL, выданным Let's Encrypt. Он работает на некоторых клиентах (Safari и Firefox на моей macOS), но не на других (завиток
на моей macOS, Safari на iOS). Уведомление на iOS:
Не доверяют
Истек 30.09.21 07:01:15
Уведомление о завиток
является:
curl: (60) Проблема с сертификатом SSL: срок действия сертификата истек
Подробнее здесь: https://curl.haxx.se/docs/sslcerts.html
curl выполняет проверку SSL-сертификата по умолчанию, используя «набор» открытых ключей центра сертификации (CA) (сертификаты CA). Если файл пакета по умолчанию не подходит, вы можете указать альтернативный файл, используя параметр --cacert.
Проверка сертификата показывает, что даты действительны. я нашел это предупреждение от Let’s Encrypt:
Срок действия корневого сертификата DST Root CA X3 истек 30 сентября 14:01:15 2021 GMT.
...
Если ваш сайт работает на большинстве устройств, но не на некоторых, проблема связана с их хранилищем доверенных сертификатов (их списком доверенных корневых сертификатов).
...
macOS, iOS и т. д.
Некоторые операционные системы сохраняют цепочку R3 > DST Root CA X3 с истекшим сроком действия, даже если ваш сервер больше не использует ее. Попробуйте перезапустить затронутое клиентское устройство.
Я принудительно обновил сертификат, скопировал закрытый ключ и полную цепочку в расположение NodeJS и перезапустил сервер. Я перезапустил устройство iOS. Новая дата отображается в моих браузерах и на устройстве iOS. Но устройство iOS по-прежнему не доверяет веб-сайту.
Сайт www.emotionathletes.og .
Как я могу гарантировать, что все клиенты получат правильную цепочку сертификатов и смогут посетить веб-сайт?