Darmowy certyfikat SSL od Let’s Encrypt w hostingu WEBD


Najtańszy certyfikat od WEBD dla pojedynczej domeny kosztuje około 50 zł (zapewne netto) rocznie a tymczasem obecnie możliwe jest przecież uzyskiwanie darmowych certyfikatów od Let’s Encrypt. Można je samemu wygenerować i podpiąć. O tym jak to zrobić będzie ten post.

Ponieważ rzecz dotyczy hostingu a więc nasze możliwości są ograniczone (nie mamy dostępu do SSH) i nie możemy na serwerze uruchomić skryptu Certbota, który automatycznie w kilkanaście sekund wszystko by za nas załatwił, to musimy skorzystać z jakiegoś alternatywnego i zlokalizowanego gdzie indziej klienta Let’s Encrypt. Klientów jest dużo, ja wybrałem takiego dostępnego z poziomu przeglądarki o nazwie ZeroSSL, bo nie chciało mi się niczego nigdzie instalować.

Korzystając z serwisu ZeroSSL należy wejść w Online Tools i wybrać FREE SSL Certificate Wizard. W formularzu w polu Domains należy wprowadzić nazwy domen (rozdzielone spacją lub przecinkiem) zgodne z ich faktycznym użyciem – czyli jeżeli pod daną domeną jest serwis internetowy używający subdomeny „www” to trzeba podać z tą domeną a jeżeli bez, to bez . Klikając kolejne razy Next będziemy otrzymywać do pobrania kolejne różne egzotyczne pliki to zachowania. Najpierw będzie to tzw. CSR oraz klucz Let’s Encrypt (LE) a później zostaną nam przekazane pliki tekstowe, które trzeba będzie umieścić w określonych lokalizacjach podanych domen, aby przejść weryfikację. Na chwilę obecną (rok 2018) oznacza to umieszczenie ich w folderze „.well-known/acme-challenge” umieszczonym w folderze głównym danej domeny, czyli tak, aby później był do nich dostęp przeglądarką za pomocą linku http://twoja-domena/.well-known/acme-challenge/plik-weryfikacyjny. Raz utworzone foldery weryfikacyjne można zostawić na zawsze, bo z dużym prawdopodobieństwem przy ponownych weryfikacjach mechanizm Let’s Encrypt będzie ich takich samych oczekiwał (czyli nie usuwajcie folderu „.well-known”).

Gdy wszystkie domeny zostaną zweryfikowane, otrzymamy do pobrania Domain Private Key oraz Domain Certificate (CTR). W tym momencie mamy już tak właściwie certyfikat SSL. Trzeba go tylko podpiąć w panelu WEBD (Cpanel’u).

W panelu WEBD robimy tak:

  1. Po zalogowaniu wchodzimy w pozycję SSL/TLS;
  2. Wprowadzamy Domain Private Key w „Klucze prywatne (KLUCZ)”;
  3. Wprowadzamy Domain Certificate w  „Certyfikaty (CRT)”;
  4. Wchodzimy w „Instalowanie usługi SSL dla witryny i zarządzanie nią (HTTPS)”;
  5. Klikamy w „Przeglądaj certyfikaty” (przycisk jest pod nagłówkiem „Zainstaluj witrynę używającą protokołu SSL”) i wybieramy dodany wcześniej certyfikat a następnie z listy wyboru „Domena” należy wskazać dla jakieś domeny certyfikat ma być użyty (certyfikat będzie automatycznie wgrany dla dwóch domen: bez przedrostka „www” oraz z nim).

Zwrotnie otrzymamy informację które podpięte do naszego konta WEBD domeny zostaną objęte certyfikatem, które nie zostaną i ewentualnie które z domen wpisanych w certyfikat w ogóle nie są do konta podpięte. Być może następnie trzeba będzie odczekać jakiś czas na przetworzenie zgłoszonych zmian (mnie się zdarzyło, że raz zmiany były wprowadzone po dłuższym opóźnieniu a innym razem niemal od razu).

Warto jeszcze dodać, że poprawna konfiguracja w panelu WEBD nie gwarantuje, że od razu w przęglądarce pojawi się „zielona kłódeczka” – serwisy internetowe uruchomione na hostingu muszą w swojej konfiguracji zostać przełączone na poprawne generowanie linków HTTPS (np. w WordPressie trzeba zmienić podstawowy adres strony oraz być może dodać jakiś plugin pomocniczy do rozwiązania problemów, np. Really Simple SSL albo SSL Insecure Security Content Fixer czy jakiś inny – jest ich sporo). Możliwe też, że trzeba będzie poprawić linki w plikach CSS.

Na koniec warto wziąć po uwagę, że:

  • Certyfikat wygaśnie za 3 miesiące, trzeba będzie tuż przed tym czasem go odnowić – być może warto to wpisać sobie w kalendarz;
  • Do odnowienia przyda się plik CSR i klucz LE generowane na początku procesu, warto je zachować;
  • Po odnowieniu dostanie się nowy plik CRT i wystarczy powtórzyć działania związane z punktami 3-5.