Let’s encrypt jak wygenerować

Czym jest Let’s Encrypt i dlaczego warto go używać Let’s Encrypt to ogólnodostępna, bezpłatna instytucja certyfikująca, której celem jest popularyzacja bezpiecznego szyfrowania w sieci. Udostępnia ona możliwość generowania darmowych certyfikatów SSL dla dowolnej domeny, co pozwala każdej stronie internetowej działać w oparciu o protokół HTTPS. W praktyce oznacza to, że dane wymieniane pomiędzy użytkownikiem a ... Dowiedz się więcej

Czym jest Let’s Encrypt i dlaczego warto go używać

Let’s Encrypt to ogólnodostępna, bezpłatna instytucja certyfikująca, której celem jest popularyzacja bezpiecznego szyfrowania w sieci. Udostępnia ona możliwość generowania darmowych certyfikatów SSL dla dowolnej domeny, co pozwala każdej stronie internetowej działać w oparciu o protokół HTTPS. W praktyce oznacza to, że dane wymieniane pomiędzy użytkownikiem a serwerem są szyfrowane, co chroni je przed przechwyceniem i zwiększa zaufanie odwiedzających. Let’s Encrypt działa w pełni automatycznie dzięki protokołowi ACME, co znacząco ułatwia proces instalacji i późniejszych odnowień certyfikatu, a jednocześnie eliminuje konieczność ręcznego generowania plików kluczy, żądań CSR czy uzgadniania konfiguracji z firmami komercyjnymi. Jest to rozwiązanie szczególnie korzystne dla właścicieli stron internetowych, blogów, projektów developerskich oraz małych i średnich sklepów online, którym zależy na zachowaniu wysokiego poziomu bezpieczeństwa bez ponoszenia kosztów.

Najważniejsze korzyści korzystania z Let’s Encrypt to przede wszystkim:

  • całkowicie darmowe wystawianie certyfikatów SSL oraz ich automatyczne odnawianie, dzięki czemu prowadzenie nawet większej liczby domen nie wiąże się z kosztami,
  • prostota instalacji umożliwiająca wygenerowanie certyfikatu za pomocą kilku komend lub jednego kliknięcia w panelu hostingowym,
  • pełna automatyzacja procesu, co eliminuje ryzyko, że certyfikat wygaśnie z powodu zapomnienia o jego ręcznym przedłużeniu,
  • wysoki poziom zaufania, ponieważ certyfikaty Let’s Encrypt są akceptowane przez wszystkie współczesne przeglądarki, urządzenia mobilne i systemy operacyjne,
  • otwarty ekosystem, który stale się rozwija i udostępnia nowe możliwości – na przykład obsługę certyfikatów wildcard zabezpieczających dowolną liczbę poddomen.

Wymagania przed rozpoczęciem – co musisz mieć przygotowane

Dostęp do serwera z uprawnieniami root/sudo

Aby móc wygenerować darmowy certyfikat SSL i zainstalować go w środowisku serwerowym, konieczny jest dostęp administracyjny do serwera, zazwyczaj w postaci uprawnień root lub sudo. Bez takiego dostępu niemożliwe będzie zarządzanie konfiguracją serwera WWW, wykonywanie komend instalacyjnych czy umieszczenie wymaganych plików w katalogach odpowiedzialnych za weryfikację domeny. Uprawnienia te wymagane są zarówno przy pracy na serwerach VPS lub dedykowanych, jak i na maszynach lokalnych wykorzystywanych testowo.

Własna domena wskazująca na Twój serwer (poprawne rekordy A/AAAA)

Aby Let’s Encrypt mógł zweryfikować, że domena należy do Ciebie, jej rekordy DNS muszą prawidłowo wskazywać na adres IP serwera. Oznacza to konieczność ustawienia rekordu A dla IPv4 lub rekordu AAAA dla IPv6. Jeśli rekordy wskazują na inny serwer, są nieaktywne lub propagacja nie została jeszcze zakończona, proces weryfikacji nie powiedzie się. Warto również upewnić się, że domena nie jest przekierowywana przez dodatkowe usługi, takie jak proxy CDN, które mogą blokować proces walidacji.

Otwarte porty 80 i/lub 443

Port 80 (HTTP) jest kluczowy dla walidacji HTTP-01, która jest najczęściej stosowaną metodą potwierdzania własności domeny. Port 443 (HTTPS) jest potrzebny do prawidłowego działania certyfikatu po jego zainstalowaniu. Jeśli którykolwiek z tych portów jest zablokowany — na przykład przez zaporę sieciową, reguły firewalla lub ustawienia usług takich jak Cloudflare — proces weryfikacji może zakończyć się niepowodzeniem. Warto upewnić się, że serwer odpowiada na żądania przychodzące na oba porty.


Najpopularniejsze sposoby generowania certyfikatu Let’s Encrypt

Metoda automatyczna z Certbot (zalecana dla większości użytkowników)

Najczęściej używanym narzędziem do generowania certyfikatów Let’s Encrypt jest Certbot. Jest to oficjalny klient ACME, który został zaprojektowany tak, aby maksymalnie uprościć proces instalacji i odnowienia certyfikatu. Certbot automatycznie konfiguruje serwery WWW, takie jak Nginx czy Apache, co pozwala na wygenerowanie certyfikatu oraz przygotowanie poprawnego wpisu HTTPS bez konieczności edycji plików konfiguracyjnych. Certbot obsługuje większość popularnych systemów Linux i jest idealnym rozwiązaniem zarówno dla początkujących, jak i zaawansowanych administratorów.

Metoda ręczna z ACME klientami (np. acme.sh, dehydrated)

Oprócz Certbota istnieje wiele innych klientów ACME, które oferują znacznie większą elastyczność. Narzędzia takie jak acme.sh czy dehydrated pozwalają generować certyfikaty bez instalowania dodatkowych zależności i umożliwiają pełną kontrolę nad procesem. Sprawdzają się szczególnie dobrze w środowiskach, w których Certbot jest zbyt rozbudowany, a także w przypadkach, gdy wymagane jest dopasowanie procesu walidacji DNS-01 do specyficznych integracji z usługami DNS. Narzędzia te często pozwalają również na łatwe tworzenie certyfikatów wildcard oraz obsługę niestandardowych scenariuszy.

Użycie paneli hostingowych (cPanel, Plesk, DirectAdmin, Webmin)

Najprostszą metodą dla użytkowników hostingów współdzielonych jest skorzystanie z panelu administracyjnego. W większości przypadków wygenerowanie certyfikatu SSL Let’s Encrypt wymaga jedynie wejścia do zakładki SSL/TLS lub zabezpieczeń, wybrania domeny i kliknięcia przycisku instalacji. Panel zwykle sam wykonuje proces weryfikacji, dodaje odpowiednie pliki na serwer oraz konfiguruje certyfikat, dzięki czemu cały proces zajmuje zaledwie kilka sekund. Jest to rozwiązanie idealne dla użytkowników, którzy nie chcą zarządzać serwerem samodzielnie.


Krok po kroku: instalacja i generowanie certyfikatu za pomocą Certbot

Krok 1 – Instalacja Certbot na popularnych systemach (Ubuntu, Debian, CentOS, AlmaLinux)

Pierwszym etapem jest instalacja Certbota. W systemach Ubuntu i Debian możesz wykonać to za pomocą:

sudo apt update sudo apt install certbot python3-certbot-nginx

Jeśli korzystasz z serwera CentOS lub AlmaLinux, użyj komendy:

sudo dnf install certbot python3-certbot-nginx

W zależności od używanego serwera WWW możesz zamienić w powyższych poleceniach element „nginx” na „apache”, aby Certbot zintegrował się z wybraną usługą. Po zakończeniu instalacji narzędzie będzie gotowe do generowania certyfikatu.

Krok 2 – Uruchomienie komendy z walidacją HTTP-01

Najprostsza metoda weryfikacji domeny polega na wykorzystaniu mechanizmu HTTP-01, który polega na umieszczeniu przez Certbot specjalnych plików w katalogu .well-known. Po ich wygenerowaniu Let’s Encrypt sprawdza ich dostępność poprzez protokół HTTP. Aby przeprowadzić walidację, możesz użyć komendy:

sudo certbot --nginx -d twojadomena.pl -d www.twojadomena.pl

Certbot przeprowadzi cały proces automatycznie, włączając w to aktualizację konfiguracji serwera i zapisanie certyfikatu w odpowiednich lokalizacjach.

Krok 3 – Uruchomienie komendy z walidacją DNS-01 (dla wildcard *.twojadomena.pl)

Jeśli potrzebujesz certyfikatu wildcard, czyli takiego, który zabezpiecza wszystkie subdomeny, konieczne jest skorzystanie z walidacji DNS-01. Polega ona na dodaniu specjalnego rekordu TXT w panelu DNS domeny. Certbot wyświetli treść rekordu, a po jego dodaniu i odczekaniu na propagację możesz kontynuować proces. Przykładowa komenda wygląda tak:

sudo certbot -d *.twojadomena.pl -d twojadomena.pl --manual --preferred-challenges dns certonly

Po zakończeniu walidacji Certbot zapisze certyfikat w systemie, a Ty będziesz mógł wdrożyć go w konfiguracji serwera.

Krok 4 – Automatyczne odnowianie certyfikatu (cron/systemd timer)

Let’s Encrypt wystawia certyfikaty na 90 dni, dlatego kluczowe jest automatyczne odnawianie. Certbot instaluje w systemie usługę systemd, która regularnie sprawdza datę ważności certyfikatów i odnawia je bez Twojej ingerencji. Aby przetestować działanie mechanizmu odnowienia, możesz użyć:

sudo certbot renew --dry-run

Dzięki temu zyskujesz pewność, że certyfikat zostanie odnowiony na czas, a Twoja witryna nie przestanie działać pod adresem HTTPS.


Generowanie certyfikatu wildcard (*.example.com)

Certyfikat wildcard pozwala zabezpieczyć wszystkie subdomeny danej domeny bez konieczności generowania wielu oddzielnych certyfikatów. Jest to szczególnie przydatne w projektach, które dynamicznie tworzą subdomeny lub korzystają z wielu sekcji serwisu. Proces jego generowania wymaga jednak walidacji DNS-01, czyli dodania rekordu TXT w panelu DNS. Po pozytywnej weryfikacji Let’s Encrypt wygeneruje certyfikat ważny przez 90 dni, który następnie należy wdrożyć w konfiguracji serwera.


Ręczne generowanie za pomocą acme.sh (alternatywa dla Certbot)

acme.sh to bardzo lekki klient ACME napisany w języku Bash, który nie wymaga instalacji dodatkowych bibliotek ani zależności. Doskonale sprawdza się w środowiskach, w których Certbot jest zbyt rozbudowany lub w sytuacjach, gdy administrator potrzebuje precyzyjnej kontroli nad procesem generowania certyfikatu. Aby zainstalować acme.sh, należy użyć:

curl https://get.acme.sh | sh

Następnie certyfikat dla domeny możesz wygenerować poleceniem:

acme.sh --issue -d twojadomena.pl -w /var/www/html

Po wygenerowaniu certyfikatu warto zainstalować go w odpowiedniej lokalizacji serwera:

acme.sh --install-cert -d twojadomena.pl \ --key-file /etc/ssl/private/key.pem \ --fullchain-file /etc/ssl/certs/fullchain.pem

Narzędzie to automatycznie odnowi certyfikat i pozwala na integrację z wieloma dostawcami DNS, co ułatwia generowanie certyfikatów wildcard.


Najczęstsze problemy i jak je rozwiązać

Błąd „Too many requests” – limity Let’s Encrypt

Let’s Encrypt, aby zapewnić sprawiedliwe korzystanie z zasobów, nakłada limity na liczbę wystawianych certyfikatów. Przykładowo, jedna domena może otrzymać maksymalnie pięć certyfikatów tygodniowo, a próby odnowienia są również ograniczone. Jeśli napotkasz błąd „Too many requests”, oznacza to, że limit został przekroczony. Najlepszym rozwiązaniem jest odczekanie tygodnia lub skorzystanie z trybu testowego „staging”, który nie nakłada ograniczeń i pozwala bezpiecznie testować konfigurację.

Problemy z walidacją HTTP-01 (port 80 zablokowany, Cloudflare proxy)

Najczęstszą przyczyną niepowodzenia walidacji HTTP-01 jest zablokowany port 80 lub korzystanie z usług pośredniczących, takich jak Cloudflare, które ukrywają prawdziwy adres serwera. Jeśli w Cloudflare aktywny jest tryb proxy (pomarańczowa chmurka), Let’s Encrypt może nie być w stanie dotrzeć do pliku weryfikacyjnego. Rozwiązaniem jest wyłączenie proxy na czas walidacji lub skorzystanie z walidacji DNS-01. Warto również upewnić się, że serwer odpowiada na żądania HTTP, a reguły firewalla nie blokują ruchu przychodzącego.

Certyfikat wygasł – jak wymusić natychmiastowe odnowienie

Jeśli certyfikat wygasł lub zbliża się do końca ważności, możesz ręcznie wymusić jego odnowienie. W przypadku Certbota użyj:

sudo certbot renew --force-renewal

Natomiast dla acme.sh:

acme.sh --renew -d twojadomena.pl --force

Wymuszenie odnowienia certyfikatu powoduje pobranie nowego zestawu plików i aktualizację konfiguracji serwera, dzięki czemu strona natychmiast wraca do działania pod HTTPS.


Podsumowanie

Generowanie darmowego certyfikatu SSL Let’s Encrypt jest procesem prostym, szybkim i dostępnym dla każdego. Niezależnie od tego, czy korzystasz z serwera VPS, panelu hostingowego czy niestandardowej infrastruktury, istnieje metoda, która pozwoli Ci zainstalować certyfikat w sposób wygodny i bezpieczny. Certbot sprawdza się najlepiej w większości przypadków, dzięki pełnej automatyzacji i łatwej integracji z popularnymi serwerami WWW. Alternatywne narzędzia, takie jak acme.sh, oferują dużą elastyczność, szczególnie przy generowaniu certyfikatów wildcard. Pamiętaj też o typowych problemach, takich jak limity Let’s Encrypt czy zablokowane porty, które często można rozwiązać w kilku prostych krokach. Właściwie wdrożony certyfikat SSL pozwoli Twojej witrynie działać pod bezpiecznym adresem HTTPS i zapewni ochronę danych użytkowników oraz lepsze pozycjonowanie w wyszukiwarkach.

Aleweb

More from the SimpliCloud Blog

Błąd HTTP 505 – jak zdiagnozować niezgodność wersji protokołu

Błąd HTTP 505 – jak zdiagnozować niezgodność wersji protokołu

Błąd HTTP 505 (HTTP Version Not Supported) oznacza, że serwer odrzuca żądanie klienta, bo używa wersji protokołu HTTP, której nie obsługuje. Problem leży najczęściej w konfiguracji serwera Apache lub Nginx – rzadziej po stronie przeglądarki użytkownika. Artykuł prowadzi administratora przez diagnozę logów, korektę plików konfiguracyjnych i profilaktykę w 5 krokach. Co to jest błąd HTTP

EURid – europejski rejestr domen .eu: co to jest i jak działa

EURid – europejski rejestr domen .eu: co to jest i jak działa

EURid (European Registry of Internet Domain Names) to europejska organizacja non-profit odpowiedzialna za zarządzanie domenami .eu – 8. największym ccTLD na świecie z ponad 3,7 mln zarejestrowanych nazw. EURid nie sprzedaje domen bezpośrednio – rejestrację obsługują wyłącznie akredytowani przez EURid rejestratorzy. Jeśli planujesz zarejestrować domenę .eu, ten artykuł wyjaśnia dokładnie, czym jest EURid, jaką rolę pełni i jakie warunki

Cesja domeny – jak bezpiecznie przenieść prawa do domeny

Cesja domeny – jak bezpiecznie przenieść prawa do domeny

Cesja domeny to procedura przeniesienia praw i obowiązków abonenta (właściciela) na inną osobę lub firmę, realizowana przez panel rejestratora w ciągu kilku godzin do 7 dni. Dla kogoś, kto kupuje lub przejmuje domenę po raz pierwszy, kluczowe jest rozróżnienie cesji od transferu domeny oraz wiedza, jak zweryfikować bezpieczeństwo transakcji. Ten przewodnik przeprowadza przez cały proces krok po

Book a Free, Personalized Demo

Discover how SimpliCloud can transform your business with a one-on-one demo with one of our team members tailored to your needs.