3 sposoby na certyfikat SSL za darmo

10 kwietnia 2021

Certyfikat SSL to w dzisiejszych czasach niemal standard. Służy on między innymi do potwierdzania wiarygodności domeny i bezpieczeństwa polegającego na szyfrowaniu danych pomiędzy użytkownikiem a serwerem.

Strony zabezpieczone certyfikatem SSL cechują się protokołem “https://”, oraz wyświetlaniem kłódki po lewej stronie paska adresu (w zależności od przeglądarki użytkownika).

Kłódka certyfikatu SSL

Certyfikatów SSL powinny używać przede wszystkim serwisy, na których użytkownicy zostawiają jakiekolwiek swoje dane. Obejmuje to między innymi sklepy, fora internetowe, czy nawet blogi, na których użytkownicy logują się poprzez podawanie loginu i hasła. Według wielu branżowych specjalistów certyfikat SSL ma również wpływ na SEO (od 2014 roku jest czynnikiem rankingowym w wyszukiwarce Google), dlatego tym bardziej warto zabezpieczyć nim swoją stronę.

Nie da się ukryć, że certyfikat certyfikatowi nierówny, ponieważ różne rodzaje certyfikatów oferują różne zabezpieczenia. W przypadku dużych serwisów, potrzebujących solidnych zabezpieczeń, warto zainteresować się płatnym certyfikatem, np. OV (Organization Validation – Walidacja Organizacji), który potwierdza nie tylko autentyczność domeny, ale i autentyczność jej właściciela. W przypadku na przykład systemów bankowości internetowej można spotkać się z certyfikatami cieszącymi się największym zaufaniem, czyli certyfikatami “EV” (Extendend Validation – Rozszerzona walidacja).

W przypadku zwykłych stron internetowych, blogów, czy stron firmowych wystarczający może się okazać najprostszy, darmowy certyfikat DV, walidujący domenę (Domain Validation).

Jak uzyskać darmowy certyfikat SSL?

Jest co najmniej kilka możliwości. Przedstawię trzy z nich, posegregowane od tych, które są w mojej opinii najprostsze.

Generowanie Let’s Encrypt w panelu hostingu

Zdecydowanie najprostsza opcja, z której korzystam na niejednej stronie internetowej (w tym nawet na tej). Wiele nowoczesnych hostingów współdzielonych pozwala na wygenerowanie w swoim panelu certyfikatu SSL, a także na jego automatyczne odnawianie. W przypadku MyDevil  wystarczy wygenerować certyfikat w Let’s Encrypt dla konkretnej domeny w panelu hostingu.

Po poprawnym wygenerowaniu certyfikatu, które swoją drogą zazwyczaj trwa kilka ładnych minut, przejdźmy do zakładki “Strony WWW”. W WordPress warto skorzystać ze wtyczki “Realy Simple SSL“, która powinna zmienić nasze adresy na HTTPS, dzięki czemu unikniemy ewentualnych problemów z dostępnością przystosowanej pod stary protokół strony. W zakładce “Strony WWW” w panelu MyDevil możemy teraz wymusić SSL, wybierając z listy konkretną stronę -> “Zarządzaj” -> “Szczegóły” i zaznaczyć opcję “Wymuś SSL”. Po tym możemy nacisnąć na przycisk “Zapisz Zmiany” i odwiedzić naszą stronę internetową. Upewnijmy się jednak, że działa ona na nowym protokole “https”, a nie “http” (odpowiednie pola w bazie danych, konfiguracje plików i tym podobne). Tworząc stronę, warto od początku zadbać o to, żeby działała na protokole “https”. Ewentualne zmiany protokołu z reguły nie są zbyt czasochłonne dla obeznanych w tym temacie osób, ale mogą na jakiś czas wymusić przerwę w działaniu strony (jeżeli od razu wymusimy SSL).

Użycie Cloudflare

Cloudflare oprócz dostarczania CDN, zarządza także serwerami DNS. Tworzy swoisty filtr, z którym każdy użytkownik internetu lub bot przed odwiedzeniem Twojej strony łączą się z IP Cloudflare, które później udostępnia użytkownikowi treść z Twojego serwera, dzięki czemu Twoje IP jest maskowane. Oprócz wielu innych zalet Cloudflare, jak chociażby możliwość kompresji plików HTML, CSS i JS, czy użycie dodatkowych metod na przyspieszenie strony jak chociażby Rocket Loader, Cloudflare pozwala również na uruchomienie darmowego certyfikatu SSL na swojej stronie.

Po dodaniu strony do Cloudflare wystarczy przekierować  serwery DNS na serwery Cloudflare. Gdy ta operacja się zakończy (co może potrwać do nawet około 24 godzin) możesz włączyć certyfikat w zakładce “SSL/TLS”.

Włączanie SSL Cloudflare

Po tym procesie warto też w tej samej zakładce przejść do “Edge Certificates” i zaznaczyć tam pole “Always Use HTTPS”, które ma za zadanie przekierowywać użytkowników z “http” do “https”. Podobnie jak w przypadku Let’s Encrypt, przed włączeniem tej opcji warto przystosować swój skrypt do obsługi HTTPS (jeżeli strona nie jest nowa i coś się na niej już znajduje).

Generowanie Let’s Encrypt za pomocą Certbot

Jeżeli ani pierwsza, ani druga opcja nam nie odpowiada, możemy zainteresować się równie ciekawą możliwością, która pozwala nam na ręczne wygenerowanie certyfikatu od Let’s Encrypt za pomocą specjalnego programu i PowerShell lub CMD.

W zależności od konfiguracji naszego serwera możemy skorzystać z oficjalnych instrukcji na stronie projektu. Sam certyfikat od Let’s Encrypt ma 90-dniową ważność. Z tego względu warto też  zainteresować się jego automatycznym odnawianiem.