Срок действия большинства SSL-сертификатов — не более 1 года․ Подготовьтесь к обновлению заранее, чтобы посетители не увидели предупреждений браузера и поисковые системы не понизили доверие к сайту․ Ниже приведён проверенный алгоритм, который позволит обновить сертификат без единой минуты простоя․
Проверьте срок действия текущего сертификата
- Откройте сайт в браузере → кликните на иконку 🔒 → Сертификат → Валиден до․
- Или воспользуйтесь онлайн-сервисами:
https://sslchecker․com,https://crt․sh․
Рекомендуем начинать процедуру обновления за 30–45 дней до окончания срока действия․
Выберите тип нового сертификата
| Тип | Подтверждение | Время выпуска | Стоимость |
|---|---|---|---|
| Let’s Encrypt (DV) | DNS или файл | 1–2 мин | Бесплатно |
| EssentialSSL (DV) | E-mail или DNS | до 30 мин | ~5 $/год |
| OV/EV | Документы компании | 1–5 дн․ | от 50 $/год |
Если нужен максимально быстрый и бесплатный вариант без простоя — выбирайте Let’s Encrypt с автопродлением через Certbot․
Выпустите новый сертификат на «хвостовом» домене
Чтобы исключить риск простоя, не перезаписывайте сразу действующий сертификат․ Лучше:
- Зарегистрируйте временный поддомен
new․example․com(можно CNAME на тот же IP)․ - Выпустите сертификат для
new․example․com․ - Проверьте работу HTTPS на поддомене․
Пример генерации сертификата Let’s Encrypt (Nginx, Ubuntu)
sudo apt update && sudo apt install certbot python3-certbot-nginx sudo certbot certonly --webroot -w /var/www/new․example․com -d new․example․com
Сертификаты появятся в /etc/letsencrypt/live/new․example․com/․
Проверьте новый сертификат
Добавьте временный виртуальный хост и протестируйте:
server {
listen 443 ssl;
server_name new․example․com;
ssl_certificate /etc/letsencrypt/live/new․example․com/fullchain․pem;
ssl_certificate_key /etc/letsencrypt/live/new․example․com/privkey․pem;
root /var/www/new․example․com;
}
Перезапустите Nginx:
sudo nginx -t && sudo systemctl reload nginx
Убедитесь, что браузер видит зелёный замок и правильный срок действия (см․ шаг 1)․
«Горячее» переключение на продакшен-домен
Когда новый сертификат проверен:
- Скопируйте файлы
fullchain․pemиprivkey․pemв каталог продакшен-домена․ - Замените пути в конфиге виртуального хоста
example․com․ - Проверьте конфигурацию и перезапустите сервис:
sudo nginx -t && sudo systemctl reload nginx
Важно: команда reload перечитывает конфиг без остановки процессов, поэтому простой равен 0 секунд․
Устраните Mixed Content и форс-HTTPS
После переключения:
- Замените все ссылки
http://наhttps://в коде и БД․ - Добавьте редирект в Nginx:
server {
listen 80;
server_name example․com www․example․com;
return 301 https://example․com$request_uri;
}
Настройте автоматическое продление
Let’s Encrypt + Certbot
sudo crontab -e
Добавьте строку:
0 3 * * * /usr/bin/certbot renew --quiet --post-hook "systemctl reload nginx"
Теперь сертификат будет обновляться автоматически за 30 дней до истечения․
Платные сертификаты
В большинстве панелей (cPanel, Plesk, Timeweb) доступен пункт «Автопродление»․ Просто включите его при заказе․
Контрольный чек-лист
- Новый сертификат выпущен и проверен на поддомене․
- Файлы
fullchain․pemиprivkey․pemскопированы и права 600/644․ - Конфиг Nginx/Apache проверен, reload выполнен без ошибок․
- Mixed Content устранен (сервисы
https://www․whynopadlock․comпоказывают зелёный статус)․ - Автопродление включено (Cron или панель хостинга)․
Частые ошибки и их решения
| Ошибка | Возможная причина | Решение |
|---|---|---|
SSL_ERROR_BAD_CERT_DOMAIN | Сертификат выпущен не на тот домен | Проверьте CN/SAN в CSR |
mixed content warning | На странице остались http-ресурсы | Поиск/замена в БД + Content-Security-Policy |
too many redirects | Дублирующие редиректы http→https | Удалите лишние правила в htaccess/nginx |
Подведём итог
Обновлять SSL-сертификат без простоя возможно, если:
- Начать процесс заранее (за 30–45 дней)․
- Выпустить сертификат на временный поддомен․
- Проверить его и «горячо» переключить пути в конфиге․
- Настроить автоматическое продление (Let’s Encrypt Cron или функция «Автопродление» в хостинге)․
Следуя этой инструкции, вы исключите ошибки браузеров, сохраните SEO-рейтинг и обеспечите непрерывную работу сайта․
Важно: Если используете CDN (Cloudflare, Akamai), не забудьте обновить сертификат в панели CDN или включить Universal SSL․