Darmowy certyfikat HTTPS od Let’s Encrypt

Mam zieloną kłódkę! Udało mi się zainstalować certyfikat HTTPS z Let’s Encrypt. Mój hosting (Hekko.pl) niestety nie udostępnia automatycznego narzędzia zintegrowanego z Let’s Encrypt, dlatego całą procedurę trzeba wykonać ręcznie. Na szczęście nie jest to aż tak skomplikowane.

Logo Let's Encrypt

Logo Let’s Encrypt

Czym w ogóle jest Let’s Encrypt?

Let’s Encrypt to darmowy i otwarty CA (Certificate Authority, urząd certyfikacji). Umożliwia wygenerowanie darmowych certyfikatów TLS (Transport Layer Security), oferuje także zestaw narzędzi do zarządzania nimi oraz automatycznej integracji z serwerami (Certbot). Celem tego projektu jest upowszechnienie bezpiecznej, szyfrowanej komunikacji (HTTPS). Niektóre hostingi udostępniają zautomatyzowaną obsługę tych certyfikatów, niestety wciąż nie jest to zbyt popularne rozwiązanie (listę można znaleźć np. tutaj; https://community.letsencrypt.org/t/web-hosting-who-support-lets-encrypt/6920 – z bardziej znanych jest m. in. OVH).

Generowanie certyfikatu

Niestety Hekko nie udostępnia dostępu SSH (przynajmniej w moim pakiecie), nie ma więc możliwości posłużyć się rekomendowanym narzędziem, czyli Certbotem. Całą procedurę trzeba wiec wykonać ręcznie, co gorsza, powtarzać ją co trzy miesiące (bo przez taki czas jest ważny certyfikat).

Do wygenerowania certyfikatu podpisanego przez Let’s Encrypt użyłam ZeroSSL (https://zerossl.com/free-ssl/#crt), opcja „FREE SSL Certificate Wizard„. Należy wpisać tylko adres e-mail (choć i on jest opcjonalny) i domenę, zaakceptować warunki i kliknąć parę razy „Next”. Wygenerowane zostaną kolejno: CERTIFICATE REQUEST, RSA PRIVATE KEY, a na końcu CERTIFICATE i account ID. Wszystkie te dane należy skopiować i zapisać sobie gdzieś, będą potrzebne w dalszych krokach.

Certyfikat wygenerowany w ZeroSSL składa się z (dokładnie w takiej kolejności):

  • certyfikatu domeny („domain certificate”)
  • certyfikatu wydawcy (w konfiguracji hostingu może być nazwany: „Intermediate certificate”, „Certificate chain”, „CA Bundle”).

Instalacja na serwerze

Po zalogowaniu do Direct Admin:

Direct Admin - ustawienia domeny

Direct Admin – ustawienia domeny

  1. W opcji „Zarządzanie domenami”:
    • zaznaczyć checkbox „Bezpieczny SSL” i zapisać zmiany
    • zaznaczyć checkbox „Użyj dowiązania symbolicznego private_html do public_html” i zapisać zmiany
  2. W ustawieniach zaawansowanych, opcji „Certyfikaty SSL”:
    • wybrać opcję „Wklej wygenerowany certyfikat i klucz”
    • wkleić prywatny klucz RSA i podpisany certyfikat (pierwszy certyfikat pomiędzy:
      -----BEGIN CERTIFICATE----- i -----END CERTIFICATE----- oraz klucz oznaczony:
      -----BEGIN RSA PRIVATE KEY----- aż po -----END RSA PRIVATE KEY-----), zapisać.
      Skopiować należy wszystko, łącznie z nagłówkiem:
      -----BEGIN CERTIFICATE----- i -----END CERTIFICATE----- itd.
    • kliknąć na „Kliknij tutaj aby wkleić Certyfikat root CA” (na dole strony)
    • wkleić certyfikaty pośrednie (drugi certyfikat pomiędzy;
      -----BEGIN CERTIFICATE----- a -----END CERTIFICATE-----)
    • zaznaczyć checkbox „Użyj certyfikatu centrum certyfikacji”
    • zapisać zmiany.
Direct Admin - ustawienia SSL

Direct Admin – ustawienia SSL

Przekierowanie

Jeśli chcemy, aby odwołania przez HTTP były automatycznie przekierowane do HTTPS, należy zmodyfikować plik .htaccess dodając linijki:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Weryfikacja

Do zweryfikowania poprawności certyfikatu, poza własną przeglądarką (pamiętając o https:// i wyczyszczeniu pamięci przeglądarki), można użyć narzędzi takich jak na przykład https://www.sslshopper.com/ssl-checker.html lub inne. Wyświetlają one różne informacje na temat zastosowanego certyfikatu, w tym datę jego wygaśnięcia, wydawcę i inne.

SSL checker

SSL checker

Przydatny wpis? Postaw mi kawę :)

0 0 votes
Article Rating
Subscribe
Powiadom o
guest
13 komentarzy
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Remigiusz Modrzejewski
Remigiusz Modrzejewski
3 lat temu

Ja wciąż widzę http://, brakuje Ci przekierowania.

ladybu9
3 lat temu

Tak, to ostatni element który został do zrobienia, muszę jednak najpierw się upewnić, że wszytko działa OK

barthalion
barthalion
3 lat temu

I będziesz to ręcznie powtarzać co 3 miesiące w celu odnowienia certyfikatu? Raczej bym się rozejrzał za innym hostingiem…

rozie
3 lat temu

Czekaj. Chcesz powiedzieć, że teraz będziesz ręcznie aktualizować ten certyfikat, co kwartał? I masz świadomość co się będzie działo, jak zapomnisz zaktualizować?

ladybu9
3 lat temu
Reply to  rozie

Nie mam innej opcji;) Nie zapomnę, mam od tego przypomnienie w Habitice i kalendarzu;)

gnysek
gnysek
3 lat temu
Reply to  rozie

równie dobrze można zapomnieć domenę odnowić czy za hosting zapłacić 🙂 jak tych dwóch się nie zapomina to i z trzecim da radę

trackback
3 lat temu

Darmowy certyfikat HTTPS od Let’s Encrypt – Skrawek Sieci

Dziękujemy za dodanie artykułu – Trackback z dotnetomaniak.pl

Kuc
Kuc
3 lat temu

Też mam na swoim blogasku od jakiegoś czasu. Muszę przedłużyć, bo się mi już mailami przypominają.
Weryfikacja jakąś zewnętrzną stroną to dobry odruch, bo u mnie wyszło, że nie wszystkie przeglądarki umiały sobie zaciągnąć root CA, a takie toole to od razu wyłapują.

Paweł Dobrzański
3 lat temu

Podmieniałaś linki w analiticsach czy innych zew serwisach? 🙂

Widmo
Widmo
3 lat temu

U mnie nie działa. W hekko, po wklejeniu wygenerowanych kodów otrzymuje taką informację:
No certificates found
Nie można odnaleźć certyfikatu

Jaaa
Jaaa
2 lat temu
Reply to  Widmo

Dodałeś rekordy TXT do DNS’ów na serwerze?

xpil
3 lat temu

Mam zieloną kłódeczkę już chyba od dwóch lat. Najpierw kupiłem certyfikat za grosze w jakimś onlajnowym lumpexie 😉 a potem odkryłem Let’s Encrypt i się przesiadłem na darmówkę.

Jak widać na Twoim przykładzie, kłódeczka to również obowiązki (na przykład upewnianie się, że nigdzie nie masz http, wszędzie https).

comment image

Z tym, że to odnawianie co 3 miesiące to się u mnie jakoś „samo” robi, nigdy nie musiałem tego specjalnie odnawiać.

Instalowałem z wiersza poleceń, przez ssh, używając ich oficjalnego poradnika. Może dzięki temu automatyczne odnawianie certyfikatu dodało się do lokalnego crona? No nie wiem.

Adwave - marketing internetowy
Adwave - marketing internetowy
2 lat temu

Świetny artykuł, wielkie dzięki! 😀