Uzyskiwanie certyfikatu SSL dla strony w ServBay za pomocą ACME
ServBay pozwala na automatyczne uzyskiwanie certyfikatów SSL/TLS dla Twoich lokalnych stron developerskich przy użyciu protokołu ACME. Protokół ACME (Automated Certificate Management Environment) to otwarty standard służący do zautomatyzowanego zarządzania cyklem życia certyfikatów (w tym uzyskiwania, odnawiania i unieważniania). Dzięki panelowi zarządzania ACME dostarczonemu przez ServBay, konfiguracja zaufanych certyfikatów SSL dla lokalnych stron jest szybka i wygodna – co kluczowe, umożliwia symulowanie środowiska produkcyjnego oraz testowanie funkcji związanych z HTTPS.
Domyślnie ServBay korzysta z usług ZeroSSL, ale możesz także elastycznie wybrać Let's Encrypt lub Google Trust Services, czy inne zgodne z ACME urzędy certyfikacji (CA).
TIP
Aby środowisko lokalne było jak najbardziej zbliżone do produkcyjnego, zaleca się korzystanie z zaufanych certyfikatów SSL. Dzięki funkcji ACME w ServBay cały proces jest niezwykle prosty.
Wyjaśnienie kluczowych pojęć
Przed rozpoczęciem warto zapoznać się z kilkoma kluczowymi terminami, by lepiej korzystać z funkcjonalności ACME w ServBay:
- Protokół ACME: Otwarty standard służący do automatyzacji komunikacji między urzędem certyfikacji (CA) a serwerem, umożliwiający automatyczne uzyskiwanie, odnawianie i zarządzanie certyfikatami.
- Weryfikacja DNS-01 (metoda DNS API): Protokół ACME obsługuje różne sposoby potwierdzania własności domeny. ServBay korzysta głównie z metody DNS-01, czyli urząd certyfikacji wymaga dodania specjalnego rekordu TXT w DNS dla Twojej domeny. Po potwierdzeniu obecności oraz poprawności wartości tego rekordu, urząd certyfikacji stwierdza, że masz kontrolę nad domeną. Zalety tego rozwiązania:
- Twój lokalny serwer nie musi być dostępny z Internetu.
- Nawet jeśli porty 80/443 są zablokowane przez firewall lub dostawcę internetu, weryfikacja się powiedzie.
- Powiązanie z kontem zewnętrznym (EAB – External Account Binding): W przypadku niektórych urzędów certyfikacji (np. Google Trust Services lub ZeroSSL), przy pierwszym uzyskiwaniu certyfikatu przez ACME należy powiązać klienta ACME (tu: zintegrowany z ServBay
acme.sh
) z kontem założonym u danego CA. Zwykle polega to na podaniu pary identyfikatorów: Key ID oraz HMAC Key. - Certyfikaty ECC vs RSA:
- RSA: Tradycyjny algorytm szyfrowania, bardzo szeroko wspierany, lecz wymagający dłuższych kluczy (np. 2048 lub 4096 bitów), co zwiększa obciążenie.
- ECC (Elliptic Curve Cryptography): Nowoczesna kryptografia krzywych eliptycznych – zapewnia ten sam poziom bezpieczeństwa przy znacznie krótszym kluczu (np. 256 lub 384 bity). Certyfikaty ECC są wydajniejsze, zapewniają krótszy czas nawiązywania połączeń, niższe zużycie transferu i lepszą poufność. ServBay domyślnie zaleca użycie ECC.
Wymagania wstępne
ServBay realizuje wnioski o certyfikat ACME przy użyciu DNS API – lokalna strona nie musi być dostępna z Internetu. Przed zainicjowaniem procesu uzyskania certyfikatu SSL przez ACME, upewnij się, że spełniasz poniższe warunki:
- Posiadanie własnej domeny: Musisz być właścicielem domeny, którą możesz zarządzać pod kątem rekordów DNS.
- Dostęp do API DNS swojego dostawcy: Aby proces ACME mógł automatycznie dodać/usuwać rekordy TXT do weryfikacji, potrzebujesz klucza API (lub innych danych uwierzytelniających) do swojego dostawcy DNS (platformy zarządzającej strefą DNS domeny – nie zawsze jest to rejestrator domeny!). Listę obsługiwanych dostawców oraz instrukcje uzyskania kluczy API znajdziesz w oficjalnej Wiki
acme.sh
– How to use DNS API (po angielsku). Wybierz odpowiednią instrukcję dla swojego dostawcy DNS. - Pozyskanie informacji EAB (przy pierwszym wniosku do Google Trust Services lub ZeroSSL): Jeśli zdecydujesz się na Google Trust Services jako urząd certyfikacji, pobierz dane EAB z Google Cloud – patrz Obtaining EAB credentials from Google Cloud. W przypadku ZeroSSL, podczas pierwszego wniosku możesz zostać poproszony o weryfikację e-mail lub API Key.
Uzyskiwanie certyfikatu SSL za pomocą ACME w ServBay
Postępuj według poniższych kroków, aby uzyskać certyfikat SSL dla lokalnej strony developerskiej w ServBay:
Otwórz panel zarządzania ServBay Uruchom aplikację ServBay i wejdź do panelu zarządzania przez ikonę w pasku menu lub w Docku.
Przejdź do zarządzania certyfikatami SSL W lewym menu wybierz opcję
Certyfikaty SSL
.Rozpocznij wniosek o nowy certyfikat Kliknij przycisk
+
w prawym górnym rogu, wybierzWnioskuj o nowy certyfikat
.Skonfiguruj podstawowe informacje certyfikatu
- Nazwa certyfikatu: Nadaj certyfikatowi rozpoznawalną nazwę, np.
servbay-demo-ssl
. - Cel: Wybierz
TLS/SSL
. - Tryb wniosku: Wybierz
ACME
.
- Nazwa certyfikatu: Nadaj certyfikatowi rozpoznawalną nazwę, np.
Wybierz urząd certyfikacji (CA) W menu wyboru oznacz urząd, który ma wystawić certyfikat. Domyślnie jest to
ZeroSSL
, możesz także wybraćLet's Encrypt
lubGoogle Trust Services
. Na potrzeby instrukcji zakładamy wybórZeroSSL
.Wskaż dostawcę DNS API Z menu wybierz swojego dostawcę DNS (np.
Cloudflare
). Pamiętaj, że chodzi o platformę rzeczywiście obsługującą DNS Twojej domeny, a nie tylko jej rejestratora.Określ algorytm podpisywania i długość klucza
- Algorytm: Domyślnym i rekomendowanym wyborem jest
ECC
– lepsza wydajność i bezpieczeństwo. Dla pełnej kompatybilności ze starszymi urządzeniami możesz wybraćRSA
. - Długość klucza: Dla ECC domyślnie 384 bity – wystarczająco bezpieczne. Dla RSA zwykle 2048 lub 4096 bitów.
- Algorytm: Domyślnym i rekomendowanym wyborem jest
Podaj dane weryfikacyjne W zależności od wybranej pary
Urząd certyfikacji
iDostawca DNS API
, pojawią się odpowiednie formularze.- Dla ZeroSSL: wymagany może być Twój adres e-mail.
- Dla Cloudflare DNS API: wpisz klucz API lub inne dane uwierzytelniające zgodnie z wymaganiami opisanymi w Wiki
acme.sh
.
WARNING
Uwaga: wklejaj tylko wartość klucza API lub sekretu – nie kopiuj poleceń typu
export
do pola formularza.Wprowadź nazwę domeny W polu
Domena
podaj adres domeny, dla której uzyskujesz certyfikat, np.servbay.demo
lub*.servbay.demo
. Chcąc uzyskać certyfikat dla domeny „wildcard” (*.servbay.demo
), upewnij się, że Twój dostawca DNS obsługuje automatyczne dodawanie rekordów TXT.Rozpocznij proces wnioskowania Po sprawdzeniu poprawności wszystkich danych kliknij przycisk
Wnioskuj
. ServBay uruchomi zintegrowane narzędzieacme.sh
, które na podstawie wprowadzonych danych DNS API automatycznie przeprowadzi weryfikację i złoży wniosek do CA.
Proces składania wniosku może chwilę potrwać – czas zależy głównie od propagacji rekordów DNS oraz szybkości odpowiedzi CA. Informacje o postępie pojawią się w logach lub liście certyfikatów w ServBay. Po udanym zakończeniu, nowy certyfikat pojawi się na liście Certyfikaty SSL
.
Wykorzystanie certyfikatu w konfiguracji strony ServBay
Po uzyskaniu certyfikatu ACME możesz przypisać go do strony skonfigurowanej w ServBay:
- Wejdź w lewym menu panelu ServBay w sekcję
Strony
. - Wybierz stronę, które chcesz zabezpieczyć, i kliknij ikonę edycji (ołówek).
- W konfiguracji szczegółowej strony znajdź sekcję
Certyfikat SSL
. - Z rozwijanej listy wybierz nazwę nowo uzyskanego certyfikatu ACME.
- Upewnij się, że przełącznik
Włącz SSL
jest aktywny. - Zapisz zmiany konfiguracji strony. Twoja witryna powinna być dostępna przez HTTPS.
Odnawianie certyfikatu ACME
Certyfikaty wydawane przez ACME (np. przez Let's Encrypt lub ZeroSSL) są ważne zwykle przez 90 dni. Aby zapewnić ciągłość działania witryny przez HTTPS, certyfikat należy regularnie odnawiać.
ServBay automatycznie monitoruje ważność certyfikatów uzyskanych poprzez ACME. Gdy termin ważności zbliża się do końca, ServBay na podstawie wcześniej skonfigurowanych danych DNS API samodzielnie składa wniosek o odnowienie.
Jeśli klucz API do DNS pozostaje ważny, a obsługa DNS działa prawidłowo, nie musisz wykonywać żadnych dodatkowych działań. ServBay zajmie się odnowieniem w tle.
Najczęstsze problemy i FAQ
- Błąd wniosku – weryfikacja DNS nie powiodła się
- Upewnij się, że dane uwierzytelniające DNS API są poprawne i mają odpowiednie uprawnienia do modyfikacji rekordów TXT.
- Sprawdź, czy prawidłowo wybrałeś swojego dostawcę DNS API, zgodnego z faktycznym operatorem strefy DNS domeny.
- Rozpropagowanie nowego rekordu DNS może potrwać (od kilku minut do nawet kilku godzin) – odczekaj i spróbuj ponownie.
- Sprawdź poprawność wpisanej nazwy domeny.
- Błąd wniosku – problem z EAB
- Jeśli pierwszy raz korzystasz z Google Trust Services lub ZeroSSL, upewnij się, że pozyskałeś i wpisałeś poprawne dane EAB.
- W przypadku wcześniejszego sukcesu i obecnej porażki – sprawdź, czy dane EAB są nadal aktualne. Często są czasowe i wymagają odświeżenia.
- Błąd – przekroczenie limitów wniosku (Rate Limit)
- Urzędy certyfikacji wprowadzają limity liczby wniosków o certyfikat z jednej domeny/IP w określonym czasie. Wielokrotne próby lub uzyskiwanie wielu certyfikatów naraz mogą wywołać blokadę. Odczekaj kilka godzin lub dni i spróbuj ponownie.
- Certyfikat został wystawiony, ale strona jest nadal niezabezpieczona
- Upewnij się, że w konfiguracji strony ServBay przypisałeś nowy certyfikat i włączyłeś SSL.
- Wyczyść pamięć podręczną przeglądarki lub użyj trybu incognito.
- Zweryfikuj, czy Twój plik hosts lub inne ustawienia sieciowe prawidłowo kierują ruch do ServBay.
- Kiedy ServBay podejmuje próbę automatycznego odnowienia certyfikatu? ServBay podejmie próbę odnowienia zwykle na kilkadziesiąt dni przed wygaśnięciem certyfikatu (np. na 30 dni przed). Ważne, by aplikacja ServBay była uruchomiona i miała dostęp do sieci – odnowienie odbywa się w tle.
Podsumowanie
ServBay udostępnia wydajną i intuicyjną funkcję ACME, umożliwiającą deweloperom wygodne uzyskiwanie i zarządzanie zaufanymi certyfikatami SSL/TLS dla środowisk lokalnych poprzez DNS API. Nie tylko upraszcza to konfigurację, ale pozwala też zbudować środowisko testowe bliskie produkcyjnemu, z obsługą HTTPS – co skutkuje sprawniejszym i pewniejszym procesem tworzenia oraz testowania aplikacji.
Mamy nadzieję, że ten poradnik pomoże Ci skutecznie skonfigurować certyfikat SSL za pomocą ACME w ServBay i usprawni Twój lokalny workflow developerski.