Установка SSL сертификата
Установка SSL сертификата кажется простой задачей:
скачал, установил, проверил.
Однако на практике все — сложнее. Это не просто «вставить ключ в замок» – это целая головоломка, где каждая деталь должна быть на своем месте. Сертификаты бывают в разных форматах: .crt, .pem, .pfx, .cer, и не все серверы «понимают» их одинаково — это надо учитывать. Ошибка в конвертации – и сервер отказывается работать полностью или частично. Неправильная цепочка сертификатов и снова ошибка так как для успешного соединения браузер должен доверять не только Вашему сертификату, но и всей цепочке доверия. Забыли промежуточный сертификат? Получите новую ошибку!
Несоответствие домена — это ещё одна головная боль. Сертификат выпущен для example.com, а сайт работает на www.example.com или наоборот — ошибка!
Ошибки в настройках сервера. Каждый веб-сервер (Apache, Nginx, IIS) имеет свою конфигурации и это надо учитывать тоже. Например, неправильный путь к файлам или неверные права на них – и сервер просто откажется стартовать.
Срок действия и автопродление — это как раз то что чаще всего происходит. Сертификаты имеют ограниченный срок жизни (обычно 90 дней для Let’s Encrypt и 1 год для платных SSL сертификатов). Пропустили продление – сайт стал недоступен. Автопродление? Да! Надо включить обязательно!
Проблемы с OCSP Stapling и HSTS — у Вас были выключены, а надо ещё настроить HSTS (строгую политику безопасности). Снова ошиблись – сайт не откроется для мобильных клиентов на тех операторах связи которые используют жёсткую политику безопасности! Включили OCSP Stapling, но сервер не может получить ответ? Опять проблема и т.д.
Настройка SSL сертификатов – это не просто копирование файлов. Это работа с криптографией, сетями и серверными конфигурациями. Малейшая ошибка и сайт становится недоступным для всех или отдельных сегментов интернета. Вот почему эту работу надо доверять профессионалам)
Проще, легче сразу правильно установить / настроить, чем потом искать ошибки по всему серверу и т.д.
На днях столкнулся с проблемой. Перенёс домены на другой хостинг. Подождал положенные от 12 до 72 часов, пока сервера ns изменяться по всему миру. Проверил изменение ns серверов через эти сервисы:
https://dnschecker.org/
https://www.whatsmydns.net/
Всё было правильно, ns сервера изменились, но вот бесплатный SSL сертификат от Let’s Encrypt никак не хотел устанавливаться. Я обратился в службу поддержки. Там помогли, сказали что была проблема с резолвом dns, решили так:
Добавил в файл /etc/resolv.conf другие сервера: nameserver 8.8.8.8 nameserver 8.8.4.4
Всё вроде бы супер, но я переносил не один, а двадцать один домен и каждый раз обращаться в тех. поддержку было долго)
Я решил в ручную выпускать бесплатные SSL сертификаты для доменов Let’s Encrypt. Вот пошаговая инструкция как это делать:
Шаг первый.
Скачать программу win-acme
Вот прямая ссылка на программу актуальная версия.
Или вот с моего сервера можно скачать программу Win Acme.
Распаковать скаченный архив.
cd C:\1\acme
.\wacs.exe
russoturista.ru,www.russoturista.ru
di5785wb@yandex.com
C:\certs
nslookup -type=txt _acme-challenge.russoturista.ru nslookup -type=txt _acme-challenge.www.priq.ru