Отримання SSL сертифіката в ServBay за допомогою ACME
ServBay підтримує автоматичне отримання SSL/TLS сертифікатів для ваших локальних сайтів за протоколом ACME. ACME (Automated Certificate Management Environment) — це стандарт автоматизованого управління життєвим циклом цифрових сертифікатів (включаючи видання, поновлення й відкликання). Завдяки спеціальній ACME-панелі керування в ServBay ви зможете швидко й зручно налаштувати довірений SSL сертифікат для локального сайту — це надзвичайно важливо для імітації продакшн-середовища та тестування функцій, пов‘язаних з HTTPS.
За замовчуванням ServBay використовує ZeroSSL для отримання сертифіката, однак ви можете обрати й інші CA, сумісні з ACME, наприклад, Let's Encrypt або Google Trust Services.
TIP
Щоб локальне середовище розробки максимально відповідало бойовому, важливо використовувати довірений SSL сертифікат. Функціонал ACME у ServBay робить цей процес надзвичайно простим.
Пояснення основних понять
Перед початком роботи буде корисно зрозуміти кілька ключових термінів, що допоможе ефективно користуватись ACME в ServBay:
- ACME протокол: Доступний стандарт для автоматизації взаємодії між сертифікаційними центрами (CA) та серверами з метою видання, поновлення та керування сертифікатами.
- DNS-01 верифікація (через DNS API): ACME підтримує кілька способів валідації домену, але ServBay основний акцент робить на DNS-01. Це означає, що CA вимагатиме додати до DNS-зон вашого домену спеціальний TXT-запис. Якщо запис знайдено й його вміст відповідає вимогам, CA підтверджує ваше право керувати доменом. Переваги цього способу:
- Не потрібно відкривати локальний сайт для зовнішнього доступу.
- Навіть якщо порти 80/443 заблоковані, перевірка виконується.
- Зовнішня прив‘язка облікового запису (EAB - External Account Binding): Деякі CA (наприклад Google Trust Services або ZeroSSL) при першому отриманні сертифіката через ACME потребують прив‘язати ACME-клієнт (acme.sh, інтегрований в ServBay) до вашого облікового запису у CA. Для цього необхідна пара Key ID та HMAC Key.
- ECC vs RSA сертифікати:
- RSA: Традиційний алгоритм шифрування з високою сумісністю, довші ключі (2048 або 4096 біт), більше навантаження.
- ECC (еліптичні криві): Сучасніший алгоритм, дає той самий рівень безпеки, але коротший ключ (256 або 384 біт), вища продуктивність і краща захищеність. У ServBay ECC рекомендовано за замовчуванням.
Вимоги перед початком
ServBay отримує ACME сертифікати виключно через DNS API, і локальний сайт не повинен бути доступний з Інтернету. Перед подачею заявки переконайтеся в наступному:
- Ви володієте доменом: У вас має бути зареєстрований домен з можливістю керування DNS-записами.
- Ви маєте API Key провайдера DNS: Для ACME необхідний API Key (або аналогічний токен) від служби, що надає управління DNS-записами для вашого домену. Зазвичай це не реєстратор, а той, через кого керується DNS. Перевірте офіційну Wiki acme.sh щодо підтримуваних провайдерів та процесу отримання API KEY.
- Ви отримали дані EAB (для Google Trust Services або ZeroSSL вперше): Якщо обрано Google Trust Services, EAB-записи можна отримати в Google Cloud за офіційною інструкцією. Для ZeroSSL може знадобитися підтвердження на email або API Key.
Як отримати SSL-сертифікат ACME в ServBay
Дотримуйтеся такого порядку дій для отримання SSL-сертифікату для локального сайту у ServBay за ACME:
Відкрийте панель керування ServBay: Запустіть додаток та перейдіть до панелі через іконку у системній панелі або Dock.
Перейдіть до керування SSL сертифікатами: У лівій навігації знайдіть розділ
SSL сертифікатита натисніть на нього.Створіть новий сертифікат: У правому верхньому куті натисніть кнопку з плюсом
+, виберітьСтворити сертифікат.Заповніть основну інформацію:
- Назва сертифікату: Введіть ім'я, щоб легше ідентифікувати (наприклад,
servbay-demo-ssl). - Призначення: Оберіть
TLS/SSL. - Метод отримання: Виберіть
ACME.
- Назва сертифікату: Введіть ім'я, щоб легше ідентифікувати (наприклад,
Виберіть сертифікаційний центр (CA): У списку підписувачів обирайте потрібний CA — за замовчуванням тут
ZeroSSL, можна вибрати такожLet's EncryptчиGoogle Trust Services. Нижче наведений приклад дляZeroSSL.Оберіть провайдера DNS API: Вкажіть провайдера, який реально обслуговує DNS для домену (наприклад,
Cloudflare). Якщо купували домен у реєстратора, а DNS — окремо, обирайте тут DNS-провайдера.Алгоритм підпису та довжина ключа:
- Алгоритм: Рекомендовано використовувати
ECCдля більшої продуктивності та безпеки. Для старих пристроїв — можливий вибірRSA. - Довжина ключа: Для ECC — як правило
384біт (достатньо безпечно), для RSA —2048або4096біт.
- Алгоритм: Рекомендовано використовувати
Додайте інформацію для верифікації: Залежно від обраного CA й DNS-провайдера з'являться поля для введення необхідних даних.
- Для ZeroSSL — часто потрібен email.
- Для Cloudflare — введіть API Key або інший спосіб аутентифікації згідно з Wiki acme.sh.
WARNING
Важливо: Вставляйте лише значення API Key чи секретного ключа — без жодних приставок shell-команд на кшталт
export.Вкажіть домен: У полі
Домензапишіть адресу сайту (servbay.demoчи, наприклад,*.servbay.demo). Для wildcard (*.) необхідно, щоб ваш DNS-провайдер підтримував додавання TXT-записів такого формату.Натисніть «Запит» («Request»): Після того як усе заповнили, натисніть
Запит. ServBay за допомогою acme.sh автоматично додасть необхідні DNS-записи та надішле запит у CA.

Процес отримання сертифіката може тривати певний час — усе залежить від швидкості оновлення DNS-зон і відповіді CA. Слідкувати за прогресом можна у логах або у списку сертифікатів. Після успіху сертифікат відобразиться у переліку SSL сертифікати.
Зупинення поточної заявки
Під час виконання ACME-запиту кнопка Запит перетворюється у Зупинити заявку. Якщо процес триває надто довго (наприклад, DNS оновлюється повільно, або ви помилково вказали дані), натисніть Зупинити заявку, щоб перезапустити acme.sh, виправте інформацію й надішліть заявку знову — не потрібно чекати на тайм-аут.
Додаткові налаштування: очікування оновлення DNS і пропуск локальної верифікації
За замовчуванням acme.sh після додавання TXT-запису перевіряє його доступність через локальну DNS-резольвцію, а вже потім сповіщає CA. В окремих локальних мережах (за умов підміни DNS, використання fake-ip-mode, або невідповідності локальних і глобальних DNS-відповідей) внутрішня перевірка може зависнути або давати хибні переривання, навіть якщо запис уже оновився глобально.
Для таких випадків у ServBay передбачено наступні опції:
- Час очікування (секунди): Тут вказується пауза для поширення DNS інформації (за замовчуванням
120секунд). ServBay чекатиме цю паузу до передачі на перевірку у CA. - Пропустити локальну верифікацію DNS: Якщо активовано, acme.sh після очікування переходить до верифікації напряму через CA, ігноруючи локальні DNS-відповіді. Це рекомендовано, наприклад, при fake-ip режимі або проблемах з локальною резольвцією.
TIP
Якщо ваша мережа працює штатно й немає проблем із DNS, можна залишити ці параметри за замовчуванням. Вмикайте «Пропустити локальну верифікацію» лише у разі, коли TXT-запис в Інтернеті вже є, а статус залишається failed.
Використання сертифіката на сайті ServBay
Після успішного отримання ACME-сертифіката ви можете пов'язати його з сайтом у ServBay:
- Зайдіть у розділ
Сайтиу лівій навігації. - Відкрийте сайт для налаштування SSL, натиснувши іконку олівця праворуч.
- На сторінці налаштувань сайту знайдіть секцію
SSL сертифікат. - Зі списку виберіть отриманий вами ACME-сертифікат.
- Переконайтеся, що перемикач
Включити SSLувімкнений. - Збережіть зміни. Тепер сайт повинен бути доступний через HTTPS.

Поновлення ACME сертифікатів
ACME-сертифікати від Let's Encrypt, ZeroSSL та інших CA зазвичай дійсні 90 днів. Щоб забезпечити стабільну роботу сайту через HTTPS, необхідно поновлювати сертифікат до завершення терміну дії.
ServBay автоматично моніторить термін дії вашого ACME-сертифіката й при наближенні дати завершення самостійно запускає процес поновлення, використовуючи раніше налаштований DNS API.
За умови, що API Key і сервіс DNS працюють коректно, ручне втручання не потрібне — поновлення відбувається автоматично у фоновому режимі.
Часті питання (FAQ) і вирішення проблем
- Запит відхилено з помилкою DNS-перевірки:
- Перевірте правильність даних DNS API — чи маєте ви доступ на зміну TXT-записів.
- Переконайтеся, що обрали в ServBay вашого реального DNS-провайдера.
- Зачекайте кілька хвилин після додавання нового запису, повторіть спробу пізніше.
- Перевірте орфографію домену.
- Якщо DNS оновлено, але перевірка не проходить (зазвичай при fake-ip режимі або через локальні особливості мережі), активуйте «Пропустити локальну верифікацію» і збільшіть час очікування (див. розділ про додаткові налаштування вище).
- Запит відхилено через EAB:
- Для Google Trust Services або ZeroSSL переконайтеся, що EAB-дані введено коректно.
- Якщо сертифікат колись вже був виданий, а зараз — помилка, можливо, EAB-дані застаріли й потребують оновлення.
- Досягнуто ліміту заявок (Rate Limit):
- Більшість CA обмежують кількість сертифікатів на домен або IP за одиницю часу. Часті спроби або масові заявки можуть призвести до блокування — спробуйте знову через кілька годин або днів.
- Сертифікат отримано, але сайт у браузері лишається «незахищений»:
- Перевірте, чи застосували отриманий сертифікат до сайту у ServBay і активували SSL.
- Спробуйте очистити кеш браузера або відкрити сайт у режимі «інкогніто».
- Перевірте локальний файл hosts і мережеві налаштування — чи вони правильно скеровані на ServBay.
- Коли відбувається автоматичне поновлення? ServBay запускає процедуру заздалегідь — зазвичай за 30 днів до закінчення терміну дії. Головне, щоб програма була запущена та працювала мережа.
Висновок
ServBay надає потужний і простий механізм ACME, завдяки чому розробники можуть зручно отримувати та оновлювати довірені SSL/TLS сертифікати через DNS API для локальних сайтів. Це не лише спрощує процес налаштування сертифікатів, але й дозволяє створити робочу локальну інфраструктуру, максимально наближену до продуктивного середовища із підтримкою HTTPS, що значно підвищує якість розробки і тестування.
Сподіваємося, ця інструкція допоможе вам реалізувати налаштування ACME-сертифікатів у ServBay та зробить вашу локальну розробку більш безпечною та зручною!
