Как получить SSL-сертификат от ZeroSSL в ServBay
ServBay — это мощная локальная среда для веб-разработки, поддерживающая автоматический запрос и управление SSL/TLS сертификатами по протоколу ACME (Automated Certificate Management Environment). Это позволяет разработчикам легко настраивать HTTPS для локальных сайтов, точнее моделируя рабочие условия и тестируя функциональность, зависящую от HTTPS (например, Service Worker, API безопасного контекста и т.д.). В этой статье вы найдете пошаговую инструкцию по получению бесплатного SSL-сертификата от ZeroSSL с помощью ServBay.
Обзор
С интегрированной поддержкой ACME в ServBay вы можете отправлять прямые запросы на получение подлинных и общественно-доверенных SSL-сертификатов к таким сертификационным центрам, как ZeroSSL. ServBay автоматически обрабатывает процедуру запроса, подтверждение владения доменом (через DNS-01 challenge), а также продление сертификатов, что значительно упрощает настройку HTTPS в локальной среде.
Применение
- Моделирование настроек HTTPS в локальной среде, как в рабочем окружении.
- Тестирование веб-функций, требующих безопасного (secure) контекста, например Service Worker, Web Authentication API, Geolocation API (в некоторых браузерах), Payment Request API и др.
- Обеспечение一致ности между локальной и рабочей средой, снижение количества проблем из-за различий протоколов.
- Предоставление общественно-доверенного SSL-сертификата для локальных сервисов, к которым требуется публичный доступ (например, через проброс порта или туннелирование).
Необходимые условия
Перед началом работы по получению сертификата от ZeroSSL убедитесь, что выполнены следующие условия:
- Есть один или несколько доменов: Вы должны быть владельцем управляющего домен(ов). Обратите внимание: сертификаты выдаются только на ваши собственные домены, а не на
localhost
или IP-адреса. - Возможность управления DNS-записями домена: Для подтверждения права владения доменом с помощью ACME DNS-01 от ZeroSSL требуется добавить специальную TXT-запись в DNS вашего домена. Необходимо иметь возможность управлять DNS-записями.
- Получение API-ключа для вашего DNS-провайдера: ServBay использует проверки по DNS API в автоматическом режиме. Необходимо получить ключ или токен доступа к API у вашего доменного регистратора или DNS-провайдера (Cloudflare, GoDaddy, Aliyun DNS и др.). Порядок получения зависит от конкретного провайдера и обычно возможен через личный кабинет на сайте. Посетите раздел DNS API на acme.sh Wiki, чтобы узнать, какие параметры и ключи требуются для вашего провайдера. (ServBay интегрирует ACME-клиент, совместимый по настройкам DNS API с форматом acme.sh.)
Пошаговая инструкция
Вот как запросить SSL-сертификат от ZeroSSL в ServBay:
Запустите ServBay и откройте панель управления: Дважды кликните по иконке приложения ServBay для запуска, затем откройте панель управления через иконку в трее или меню.
Перейдите к управлению SSL-сертификатами: В боковом меню панели управления ServBay найдите и кликните пункт SSL-сертификаты.
Начните новый запрос сертификата: В правом верхнем углу страницы со списком сертификатов нажмите кнопку с плюсом (+). Откроется окно настройки нового сертификата.
Заполните данные запроса: В появившемся окне "Request Certificate" ("Запрос сертификата") введите следующие ключевые данные:
- Общее имя (Common Name): Название для сертификата, чтобы легко отличать его, например,
servbay.demo SSL
. Это необходимо только для внутренней идентификации в ServBay. - Цель использования (Usage Purpose): Выберите
TLS/SSL
, если сертификат предназначен для шифрования веб-трафика. - Метод запроса (Request Method): Выберите
ACME
— автоматическая заявка через ACME-протокол. - Издатель (Issuer): Выберите
ZeroSSL
. - Провайдер DNS API (DNS API Provider): Выберите вашего DNS-провайдера из выпадающего списка. ServBay поддерживает множество популярных сервисов.
- Алгоритм (Algorithm): Рекомендуется выбрать
ECC
(эллиптическая криптография) с длиной ключа384
. ECC 384 обеспечивает тот же уровень безопасности, что и RSA, но с меньшим размером ключа и лучшей производительностью. - Адрес электронной почты (E-Mail Address): Укажите действующий email. На него ZeroSSL или ServBay могут присылать уведомления о скором истечении или ошибках продления сертификата.
- Токены DNS API (DNS API Tokens): Введите значения API-ключей для вашего DNS-провайдера в формате
ключ=значение
(например,CF_Key=xxx CF_Email=xxx
). Не используйте никаких дополнительных команд вродеexport
— только чистые пары "ключ=значение" или "ключ='значение'". Несколько пар разделяйте пробелом. Проверьте правильность заполнения по разделу для вашего провайдера на acme.sh Wiki. - Домен (Domain): Укажите домены для сертификата. Для нескольких доменов (включая подстановочные) используйте запятую. Например:
servbay.demo, www.servbay.demo, *.servbay.demo
. Для заявок на wildcard-сертификаты (*.вашдомен.com
) обязательно применяется DNS API-подтверждение.
(Примечание: домены на скриншотах могут отличаться от примеров в тексте — ориентируйтесь на текстовые описания)
- Общее имя (Common Name): Название для сертификата, чтобы легко отличать его, например,
Отправьте заявку: Проверьте корректность данных и нажмите Request ("Запросить") в правом нижнем углу окна.
Дождитесь завершения процесса: ServBay запустит ACME-клиент в фоновом режиме, соединится с серверами ZeroSSL, выполнит проверку права владения доменом (автоматически добавив и проверив TXT-запись через предоставленный вами DNS API), после чего сертификат будет выдан и установлен. Время ожидания зависит от скорости распространения DNS-записей и отклика ZeroSSL.
Проверьте список сертификатов: После успешной выдачи новый сертификат появится в списке SSL-сертификатов — его статус будет "Valid" (действителен).
Использование сертификата
После успешного получения и добавления сертификата в ServBay вы можете назначить его своему сайту:
- Откройте настройки сайтов: В панели управления ServBay выберите пункт Сайты.
- Выберите или настройте сайт: Откройте существующий сайт или создайте новый, для которого требуется HTTPS.
- Настройка SSL-сертификата: В разделе настроек SSL выберите ACME вместо значения по умолчанию ("None" или ServBay User CA).
- Выбор сертификата: В выпадающем списке выберите только что полученный сертификат ZeroSSL (по Common Name).
- Сохраните изменения: После этого нажмите сохранить. ServBay автоматически перенастроит ваш веб-сервер (Caddy или Nginx), чтобы он использовал выбранный сертификат для HTTPS.
(Примечание: домены на скриншотах могут отличаться — ориентируйтесь на текстовое описание)
Теперь ваш локальный сайт будет доступен по адресу https://ваш_домен
.
Продление сертификата
Сертификаты ZeroSSL обычно действуют 90 дней. Интегрированная функция ACME в ServBay будет автоматически отслеживать срок действия сертификата и за 30 дней до истечения автоматически инициировать продление. Если ServBay работает и API-ключи DNS актуальны, продление полностью автоматизировано — ручное вмешательство не требуется.
Важные замечания и устранение ошибок
- Безопасность DNS API-ключей: Ваши API-ключи дают доступ к редактированию DNS-записей, храните их в безопасности и не раскрывайте.
- Время распространения DNS: Выдача сертификата зависит от подтверждения DNS TXT-записи. Изменения DNS могут распространяться от нескольких минут до нескольких часов. При неудаче попробуйте повторить попытку позже.
- Формат API-ключей: Проверьте правильность формата согласно инструкции на Wiki acme.sh — не добавляйте префиксы команд shell (
export
и т.п.). Это частая причина ошибок. - Брандмауэр: Убедитесь, что ваш фаервол или настройки сети не блокируют доступ ServBay к серверам ZeroSSL и вашему DNS-провайдеру.
- ServBay User CA vs. ZeroSSL: ServBay также предоставляет встроенные CA (корневые сертификаты), которые подходят для чисто локальной разработки — они требуют доверия к корневому сертификату в системе/браузере. Сертификаты ZeroSSL публично-доверенные и применимы для эмуляции рабочего окружения или публичного доступа. Выбирайте вариант под ваши задачи.
Итог
Интеграция ACME в ServBay позволяет легко и быстро получать и обновлять бесплатные SSL-сертификаты от ZeroSSL для локальных сайтов с поддержкой HTTPS. Это помогает более точно имитировать боевое окружение, тестировать безопасность и повышать удобство разработки. Благодаря автоматизированному процессу запроса и продления настройка HTTPS в локальной среде становится проще простого.