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ę :)

12
Dodaj komentarz

avatar
9 Comment threads
3 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
10 Comment authors
Adwave - marketing internetowyxpilWidmognysekPaweł Dobrzański Recent comment authors
  Subscribe  
najnowszy najstarszy oceniany
Powiadom o
Remigiusz Modrzejewski
Gość
Remigiusz Modrzejewski

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

ladybu9
Gość

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

barthalion
Gość
barthalion

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

Kuc
Gość

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ą.

rozie
Gość
rozie

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
Gość

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

gnysek
Gość
gnysek

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

Darmowy certyfikat HTTPS od Let’s Encrypt – Skrawek Sieci

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

Paweł Dobrzański
Gość

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

Widmo
Gość
Widmo

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

xpil
Gość

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
Gość
Adwave - marketing internetowy

Świetny artykuł, wielkie dzięki! 😀