15%

Сэкономьте 15% на всех хостинговых услугах

Проверьте свои навыки и получите скидку на любой тарифный план

Используйте код:

Skills
Начать
10.10.2024

Как управлять AutoSSL для оптимальной безопасности веб-сайта

AutoSSL — это функция cPanel, которая автоматически выпускает и обновляет SSL/TLS сертификаты для всех доменов на хостинговом аккаунте, используя доверенный центр сертификации, такой как Let's Encrypt или Sectigo, без необходимости ручного вмешательства. Когда срок действия сертификата приближается к истечению, AutoSSL автоматически перевыпускает его, обеспечивая бесперебойную работу HTTPS для каждого домена и поддомена, которым он управляет.

Для любого администратора сервера, запускающего сайты на VPS с cPanel, AutoSSL устраняет наиболее распространённую причину неожиданных сбоев HTTPS: забытые ручные обновления. Это руководство охватывает полный операционный жизненный цикл — включение, настройку, устранение неполадок и усиление защиты AutoSSL — с технической глубиной, необходимой для надёжного управления им в производственной среде.

Что AutoSSL делает под капотом

AutoSSL — это не просто задание cron, вызывающее Certbot. Это нативная подсистема cPanel с собственной архитектурой плагинов провайдеров. При запуске она выполняет следующую последовательность действий:

  1. Обнаружение доменов — сканирует все домены, поддомены и почтовые имена хостов, связанные с аккаунтом cPanel.
  2. Анализ пробелов в сертификатах — сравнивает существующие сертификаты с полным списком доменов и определяет имена хостов, не охваченные действительным доверенным сертификатом.
  3. DCV (проверка контроля над доменом) — подтверждает владение доменом одним из двух методов: HTTP-валидация на основе файла (размещение токена по адресу /.well-known/pki-validation/) или DNS-валидация через запись TXT.
  4. Выпуск сертификата — запрашивает новый сертификат у настроенного CA (по умолчанию Let's Encrypt на большинстве хостингов, Sectigo на серверах с лицензией WHM и соглашением Sectigo).
  5. Установка — устанавливает сертификат в конфигурацию виртуального хоста Apache или LiteSpeed и обновляет хранилище сертификатов cPanel.
  6. Планирование обновления — AutoSSL работает по серверному расписанию cron (обычно каждые 24 часа) и начинает попытки обновления, когда до истечения срока действия сертификата остаётся менее 15 дней.

Понимание этого процесса необходимо для диагностики сбоев, поскольку проблема на любом этапе приводит к ошибкам разного класса.

AutoSSL vs. ручные сертификаты vs. Certbot: прямое сравнение

ФункцияAutoSSL (cPanel)Certbot (автономный)Платный/ручной сертификат
СтоимостьБесплатно (Let's Encrypt / Sectigo DV)Бесплатно (Let's Encrypt)$10–$1,000+/год
Автоматизация обновленияПолностью автоматически через cron cPanelТребует настройки таймера systemd или cronВручную или через портал CA
Поддержка WildcardНет (только DV SAN)Да (с DNS-challenge)Да (OV/EV/Wildcard)
Валидация EV/OVНетНетДа
Интеграция с cPanelНативнаяВнешняя, требует ручного редактирования vhostЧерез менеджер SSL cPanel
Мультидоменный SANДа (домены на аккаунте)ДаДа
Метод DCVHTTP-файл или DNS TXTHTTP, DNS, TLS-ALPNEmail, HTTP, DNS
Видимость сбоевЛоги WHM/cPanel + email-уведомленияВывод CLI + журнал systemdПанель управления CA
Пригодность для productionДа (сценарии использования DV)Да (любые сценарии)Да (сценарии с высокими требованиями к надёжности)

Для подавляющего большинства сайтов, работающих на общем хостинге или VPS, AutoSSL покрывает все требования. Certbot предпочтительнее, когда нужны wildcard-сертификаты или работа вне среды cPanel. Платные сертификаты остаются необходимыми только при требованиях к валидации OV/EV, например, для финансовых учреждений или в рамках корпоративных требований соответствия.

Предварительные требования перед включением AutoSSL

Перед запуском AutoSSL убедитесь, что выполнены следующие условия. Пропуск этого чеклиста — основная причина неудачи при первоначальной настройке.

Разрешение DNS

  • Каждый домен и поддомен, который вы хотите охватить, должен разрешаться в IP-адрес сервера. HTTP DCV AutoSSL завершится ошибкой, если домен указывает в другое место.
  • Проверьте с помощью: dig +short yourdomain.com A

Доступность веб-сервера

  • Порт 80 должен быть открыт и обслуживать контент. HTTP-challenge Let's Encrypt требует неаутентифицированного HTTP-ответа на порту 80, даже если впоследствии вы перенаправляете всё на HTTPS.
  • Проверьте: curl -I http://yourdomain.com/.well-known/pki-validation/

Отсутствие конфликтующих сторонних сертификатов

  • Если для домена уже установлен вручную сертификат, срок действия которого не истёк, AutoSSL не перезапишет его, если вы явно не исключите или не удалите его.

Настроенный провайдер AutoSSL в WHM (для администраторов серверов)

  • В WHM перейдите в SSL/TLS > Manage AutoSSL и убедитесь, что провайдер выбран и активен. На VPS Хостинге AlexHost с cPanel Let's Encrypt обычно предварительно настроен.

Как включить AutoSSL в cPanel: пошаговая инструкция

Шаг 1: Доступ к интерфейсу статуса SSL/TLS

Войдите в свой аккаунт cPanel. В разделе Безопасность нажмите Статус SSL/TLS. На этой панели отображаются все домены и поддомены аккаунта, выделенные цветом в зависимости от состояния сертификата:

  • Зелёный замок — установлен действительный сертификат
  • Жёлтое предупреждение — сертификат присутствует, но скоро истекает или использует самоподписанный/ненадёжный CA
  • Красный крест — действительный сертификат отсутствует

Шаг 2: Выбор доменов для покрытия AutoSSL

Просмотрите список доменов. По умолчанию все домены имеют право на участие. Если вы хотите исключить определённые поддомены (тестовые среды, внутренние инструменты или домены, намеренно обслуживаемые по HTTP), установите их флажки и нажмите Исключить из AutoSSL. Исключённые домены не будут затронуты процессом AutoSSL.

Шаг 3: Запуск AutoSSL

Нажмите кнопку Запустить AutoSSL. cPanel немедленно начнёт процесс DCV и выпуска сертификата. Для аккаунтов с большим количеством доменов это может занять несколько минут. Интерфейс обновляется в режиме реального времени, отображая статус для каждого домена.

Вы также можете запустить AutoSSL программно через API cPanel:

/usr/local/cpanel/bin/autossl_check --user=cpanelusername

Или из WHM для всех аккаунтов на сервере:

/usr/local/cpanel/bin/autossl_check_all_users

Шаг 4: Проверка установки сертификата

После завершения AutoSSL вернитесь в Статус SSL/TLS и убедитесь, что все целевые домены отображают зелёный замок. Вы также можете выполнить проверку из командной строки:

echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -dates -issuer

Это выводит окно действия сертификата и выдавший CA, подтверждая, что установлен правильный сертификат.

Настройка уведомлений AutoSSL

По умолчанию сбои AutoSSL происходят незаметно, если не настроены оповещения. В WHM перейдите в SSL/TLS > Manage AutoSSL > Настройки уведомлений и включите email-оповещения для:

  • Сбоев выпуска сертификатов
  • Сбоев DCV
  • Сертификатов, истекающих в пределах настраиваемого порога (рекомендуется: 20 дней)

На уровне аккаунта cPanel убедитесь, что контактный email-адрес в разделе Настройки > Контактная информация актуален. События AutoSSL записываются в /var/cpanel/logs/autossl/ на сервере, по одному файлу журнала на каждый запуск, с временными метками для удобной корреляции.

Устранение неполадок AutoSSL: первопричины и решения

Сбои проверки домена (DCV)

Сбои DCV — наиболее распространённая ошибка AutoSSL. Запись в журнале обычно выглядит так: DCV failed for domain "sub.example.com".

Первопричины и решения:

  • DNS не распространился — Если вы недавно направили домен на этот сервер, распространение DNS может быть неполным. Подождите до 48 часов или проверьте с помощью dig @8.8.8.8 yourdomain.com A.
  • Домен за прокси (Cloudflare и др.) — Если прокси Cloudflare (оранжевое облако) активен, HTTP DCV AutoSSL может завершиться ошибкой, поскольку файл challenge обслуживается с edge-серверов Cloudflare, а не с origin-сервера. Либо временно отключите прокси (серое облако) во время выпуска, либо переключитесь на DNS-based DCV, если ваш провайдер это поддерживает.
  • .htaccess блокирует /.well-known/ — Некоторые конфигурации .htaccess WordPress или с усиленной безопасностью блокируют доступ к скрытым директориям. Добавьте следующее исключение:
RewriteRule ^.well-known/ - [L]
  • Порт 80 заблокирован файрволом — Убедитесь, что порт 80 открыт в вашем файрволе (iptables -L -n | grep 80 или через менеджер файрвола CSF/WHM).

Предупреждения о смешанном контенте после активации HTTPS

После того как AutoSSL выпустит сертификат, браузеры могут по-прежнему отображать предупреждение «Небезопасно» или замок с предупреждающим треугольником. Это вызвано смешанным контентом — ресурсами (изображения, скрипты, таблицы стилей, iframe), загружаемыми по http:// на странице, в остальном использующей HTTPS.

Исправление для WordPress:

Установите плагин Really Simple SSL, который перезаписывает внутренние URL и устанавливает серверную переменную HTTPS. Либо добавьте это в wp-config.php:

define('FORCE_SSL_ADMIN', true);
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false) {
    $_SERVER['HTTPS'] = 'on';
}

Исправление на уровне сервера (Apache/LiteSpeed):

Добавьте глобальное перенаправление HTTP на HTTPS в конфигурацию виртуального хоста или .htaccess:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

После применения перенаправления используйте инструмент Why No Padlock или DevTools браузера (вкладка Network, фильтр по схеме) для выявления оставшихся HTTP-ресурсов.

Сбои обновления сертификата

Если AutoSSL не может обновить ранее действительный сертификат, проверьте журнал AutoSSL на предмет конкретного сбоя:

ls -lt /var/cpanel/logs/autossl/ | head -5
cat /var/cpanel/logs/autossl/LATEST_LOG_FILE

Распространённые причины сбоев обновления:

  • Изменился DNS — Домен теперь указывает на другой сервер. AutoSSL на старом сервере больше не может завершить HTTP DCV.
  • Ограничения скорости Let's Encrypt — Let's Encrypt устанавливает ограничение в 5 дублирующихся сертификатов в неделю на домен. Если вы неоднократно запускали AutoSSL вручную во время тестирования, вы можете достичь этого лимита. Проверьте на crt.sh последние выпуски.
  • Истёкшая лицензия WHM — На серверах, использующих Sectigo в качестве провайдера AutoSSL, истёкшая лицензия WHM заблокирует новые выпуски. Проверьте статус лицензии в WHM в разделе Конфигурация сервера > Менеджер лицензий.
  • Несовместимость версии cPanel — Убедитесь, что cPanel обновлён. Запустите upcp из оболочки сервера для применения обновлений.

Сохранение самоподписанных или ненадёжных сертификатов

Если домен отображает самоподписанный сертификат, несмотря на успешное выполнение AutoSSL, вручную установленный сертификат может иметь приоритет. В cPanel перейдите в SSL/TLS > Управление SSL-сайтами и удалите любой вручную установленный сертификат для затронутого домена, затем повторно запустите AutoSSL.

Расширенная настройка: AutoSSL с wildcard-доменами

AutoSSL не выпускает wildcard-сертификаты (*.example.com) нативно. Если вашему приложению требуется wildcard — например, для динамически генерируемых поддоменов SaaS-платформы — у вас есть два варианта:

Вариант 1: Использовать Certbot с DNS-challenge

certbot certonly --dns-cloudflare 
  --dns-cloudflare-credentials ~/.secrets/cloudflare.ini 
  -d "*.example.com" -d "example.com"

Затем установите полученный сертификат вручную через интерфейс Управление SSL-сайтами cPanel или через API cPanel.

Вариант 2: Приобрести wildcard DV-сертификат

Wildcard DV-сертификаты от таких провайдеров, как Sectigo или DigiCert, доступны по разумной цене и могут быть установлены через управление SSL-сертификатами. Это более простой путь для нетехнических пользователей, которым нужно wildcard-покрытие без управления Certbot.

AutoSSL и особенности почтового хостинга

AutoSSL также защищает имена хостов, связанные с почтой: mail.yourdomain.com, smtp.yourdomain.com, imap.yourdomain.com и webmail.yourdomain.com. Они автоматически включаются в список SAN (Subject Alternative Name) выпущенного сертификата.

Если вы используете Почтовый хостинг на том же сервере, убедитесь, что имя хоста почтового сервера в вашем почтовом клиенте совпадает с одним из SAN в сертификате. Несоответствие между именем хоста, настроенным в Outlook или Thunderbird, и списком SAN сертификата приведёт к ошибкам SSL в почтовых клиентах, даже если сам сайт отображает действительный замок.

Проверьте полный список SAN установленного сертификата:

echo | openssl s_client -connect mail.yourdomain.com:993 2>/dev/null | openssl x509 -noout -text | grep -A1 "Subject Alternative Name"

Усиление безопасности за пределами AutoSSL

AutoSSL обеспечивает выпуск сертификатов, но само по себе наличие сертификата не означает усиленной конфигурации TLS. После включения AutoSSL примените следующие меры по усилению защиты.

Принудительно используйте только TLS 1.2 и 1.3

В WHM в разделе Конфигурация сервисов > Конфигурация Apache > Глобальная конфигурация отключите TLS 1.0 и 1.1. Для LiteSpeed перейдите в Консоль WebAdmin > Listeners > SSL > Версия протокола.

Включите HSTS (HTTP Strict Transport Security)

Добавьте следующий заголовок в конфигурацию виртуального хоста или .htaccess после подтверждения стабильности HTTPS:

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

Не включайте preload, пока не убедитесь, что все поддомены охвачены действительными сертификатами и вы намерены постоянно поддерживать HTTPS. Предзагрузка HSTS необратима в краткосрочной перспективе.

Отключите слабые наборы шифров

В конфигурации Apache WHM установите директиву SSLCipherSuite на современный список шифров. Безопасный базовый вариант:

ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384

Протестируйте вашу конфигурацию

Запустите ваш домен через SSL Labs Server Test после применения изменений. Стремитесь к рейтингу A или A+. AutoSSL сам по себе обычно даёт рейтинг B на конфигурациях cPanel по умолчанию; усиление шифров и протоколов, описанное выше, повышает его до A+.

Лучшие практики управления AutoSSL в production

Поддерживайте cPanel и WHM в актуальном состоянии. Интеграция AutoSSL с Let's Encrypt зависит от ACME-клиента, поставляемого с cPanel. Устаревшие версии могут давать сбои при изменениях API Let's Encrypt. Запускайте обновления через WHM или планируйте их с помощью:

/scripts/upcp --force

Поддерживайте актуальность DNS-записей. Любое изменение DNS — миграция серверов имён, смена IP, активация CDN — может нарушить DCV. Перед миграцией домена на новый сервер или CDN включите повторный выпуск AutoSSL в план миграции.

Не полагайтесь исключительно на журналы AutoSSL. Настройте внешний мониторинг сертификатов с помощью таких инструментов, как certspotter, SSL-мониторинг Uptime Robot или пользовательский cron, который оповещает вас, если срок действия сертификата опускается ниже 20 дней:

#!/bin/bash
DOMAIN="yourdomain.com"
EXPIRY=$(echo | openssl s_client -connect ${DOMAIN}:443 -servername ${DOMAIN} 2>/dev/null 
  | openssl x509 -noout -enddate | cut -d= -f2)
EXPIRY_EPOCH=$(date -d "${EXPIRY}" +%s)
NOW_EPOCH=$(date +%s)
DAYS_LEFT=$(( (EXPIRY_EPOCH - NOW_EPOCH) / 86400 ))
if [ "$DAYS_LEFT" -lt 20 ]; then
  echo "WARNING: ${DOMAIN} certificate expires in ${DAYS_LEFT} days" | mail -s "SSL Alert" admin@yourdomain.com
fi

Используйте отдельные сертификаты для высокоценных доменов. Для доменов, обрабатывающих платежи или конфиденциальные данные пользователей, рассмотрите возможность дополнения DV-сертификата AutoSSL платным OV или EV-сертификатом, установленным вручную. AutoSSL и сертификаты, управляемые вручную, могут сосуществовать на одном сервере — AutoSSL просто пропускает домены, для которых уже установлен действительный доверенный сертификат.

Периодически проверяйте исключённые домены. Домены, исключённые из AutoSSL, легко забыть. Запланируйте ежеквартальный просмотр списка исключений в разделе Статус SSL/TLS, чтобы убедиться, что тестовые или разрабатываемые домены случайно не вышли в production без покрытия сертификатом.

Матрица решений: когда AutoSSL достаточен, а когда нет

СценарийAutoSSL достаточен?Рекомендуемая альтернатива
Стандартный бизнес-сайтДа
Блог WordPress или e-commerce (WooCommerce)Да
SaaS с большим количеством поддоменов и динамическими поддоменамиНетCertbot wildcard + DNS challenge
Финансовое учреждение, требующее EV-сертификатНетПлатный EV-сертификат
Внутренний/интранет-домен (непубличный DNS)НетЧастный CA или самоподписанный с внутренним доверием
Покрытие имени хоста почтового сервераДа
Домен за CDN-прокси (полный прокси Cloudflare)ЧастичноCloudflare Origin Certificate или режим Full (Strict)
Многосерверная среда с балансировкой нагрузкиЧастичноЦентрализованное управление сертификатами (например, cert-manager)

Ключевые технические выводы

  • AutoSSL работает по серверному расписанию cron и проверяет все аккаунты ежедневно; ручные запуски доступны через WHM или API cPanel для немедленного выпуска.
  • HTTP DCV требует, чтобы порт 80 был открыт и путь /.well-known/pki-validation/ был публично доступен — это наиболее распространённая ошибка конфигурации.
  • Режим оранжевого облака Cloudflare блокирует HTTP DCV; переключитесь на серое облако при первоначальном выпуске или используйте DNS-based DCV.
  • AutoSSL не выпускает wildcard-сертификаты; для этого используйте Certbot с DNS-плагином или приобретённый wildcard-сертификат.
  • HSTS следует включать только после подтверждения стабильной работы AutoSSL на всех поддоменах; преждевременное развёртывание HSTS с неполным покрытием сертификатами может заблокировать пользователям доступ к поддоменам.
  • Внешний мониторинг сертификатов обязателен в production — внутренние оповещения AutoSSL являются дополнением, а не заменой независимого мониторинга истечения срока действия.
  • Для серверов, требующих более детального контроля над конфигурацией TLS, выделение Выделенного сервера даёт полный доступ к SSL-стеку веб-сервера без ограничений общей среды.
  • Панели управления VPS, отличные от cPanel (Plesk, DirectAdmin, CyberPanel), имеют собственные аналоги AutoSSL с различными путями конфигурации, но одинаковой базовой механикой протокола ACME.

Часто задаваемые вопросы

Работает ли AutoSSL, если мой домен находится за Cloudflare?

Только если Cloudflare работает в режиме только DNS (серое облако). Когда активен прокси оранжевого облака, Cloudflare перехватывает HTTP-запросы, не позволяя Let's Encrypt получить доступ к файлу токена DCV на вашем origin-сервере. Либо временно отключите прокси во время выпуска, либо настройте режим SSL Cloudflare на «Full (Strict)» и используйте вместо него Cloudflare Origin Certificate.

Как часто AutoSSL пытается обновить сертификаты?

Cron AutoSSL запускается каждые 24 часа на уровне сервера. Попытки обновления начинаются, когда до истечения срока действия сертификата остаётся 15 или менее дней. Сертификаты Let's Encrypt имеют срок действия 90 дней, поэтому обновление обычно происходит примерно на 75-й день.

Может ли AutoSSL сосуществовать с вручную установленным платным SSL-сертификатом?

Да. AutoSSL пропускает любой домен, для которого уже установлен действительный доверенный сертификат. Если вы вручную устанавливаете платный сертификат через менеджер SSL cPanel, AutoSSL не перезапишет его. После истечения срока действия платного сертификата AutoSSL вступит в действие и выпустит сертификат Let's Encrypt при следующем запланированном запуске, при условии что домен пройдёт DCV.

Почему мой почтовый клиент показывает ошибку SSL, хотя на сайте установлен действительный сертификат AutoSSL?

Почтовый клиент подключается к имени хоста (например, mail.yourdomain.com), которое может не быть включено в список SAN сертификата, или на почтовых портах (993, 587, 465) установлен другой сертификат. Выполните команду openssl s_client для почтового порта и убедитесь, что список SAN соответствует имени хоста, настроенному в вашем клиенте.

Что произойдёт, если AutoSSL не сможет обновить сертификат и он истечёт?

Браузеры будут отображать полностраничное предупреждение «Ваше соединение не защищено», и большинство пользователей не продолжат работу. Поисковые роботы также могут пометить сайт. Если у вас включён HSTS, браузер полностью откажется подключаться без возможности обхода. Проактивно отслеживайте истечение срока действия с помощью внешних инструментов и настройте email-оповещения WHM, чтобы обнаруживать сбои обновления до истечения срока действия.

15%

Сэкономьте 15% на всех хостинговых услугах

Проверьте свои навыки и получите скидку на любой тарифный план

Используйте код:

Skills
Начать