Co to jest certyfikat SSL?
Certyikaty SSL zawiera m.in. nazwę domeny, dla której został wystawiony. Może być to nazwa wildcardowa, czyli zawierać wszystkie subdomeny dla danej domeny. Ponieważ każda osoba może stworzyć dowolny certyfikat, utworzono Urzędy Certyfikacji (Certificate Authority – CA). Są to zaufane instytucje weryfikujące prawo do posługiwania się domeną. Jeśli serwer przedstawi certyfikat niepodpisany przez CA, w większości przeglądarek i klientów pocztowych w czasie próby połączenia użytkownik zobaczy odpowiednie ostrzeżenie.
Certyfikat SSL za darmo? Czy to możliwe?
Oczywiście. Aby dane użytkowników były bardziej bezpieczne, należy korzystać z szyfrowania SSL. Niestety nie każdego stać na opłacenie takiego certyfikatu i nie każdemu się to opłaca, a użytkownicy na tym cierpią.
Dlatego też powstała oferta darmowego certyfikatu SSL z ograniczeniami aby każdy mógł zainstalować go na własnej stronie bez dodatkowych kosztów.
Taką możliwość daje nam darmowy certyfikat SSL, który możemy uzyskać dzięki https://letsencrypt.org/
Certyfikaty te są prawidłowo rozpoznawane przez większość współczesnych przeglądarek, zapewniając tym samym naszej stronie „zieloną kłódkę”.
Let’s Encrypt to nie jedyna możliwość uzyskania darmowego certyfikatu. My osobiście skorzystaliśmy z możliwości jakie daje https://www.cloudflare.com, które dodatkowo chroni nas przed atakami Anti-DDoS na domenę. Niestety to rozwiązanie jest bardziej ograniczone jeśli chodzi o certyfikat SSL a w naszym przypadku w pełni wystarczające.
Jeśli korzystamy z cloudflare, to niestety nie można już skorzystać z Let’s Encrypt.
Poniżej pokazuje jak wygląda certyfikat z cloudflare:
Wynik z https://www.sslshopper.com/ssl-checker.html#hostname=itmon.pl na dzień dzisiejszy
Zamieszczam również wynik z certyfikatem Let’s Encrypt dla porównania:
Jak zainstalować certyfikat SSL?
W przypadku Let’s Encrypt i dostępu do Shell po SSH na serwerze, można skorzystać z https://certbot.eff.org/. Na stronie można wybrać z jakiego oprogramowania (Apache. Nginx) i systemu korzystamy. Po czym wyświetli się na instrukcja jak zainstalować certyfikat.
W dalszej części artykułu pokaże jak zainstalować darmowy certyfikat SSL za pomocą DirectAdmin.
Instalacja darmowego certyfikatu SSL w panelu DirectAdmin
Przygotowanie panelu DirectAdmina do automatycznej instalacji SSL przez użytkowników
Zanim użytkownicy panelu DirectAdmin będą mogli korzystać z możliwości instalacji darmowego certyfikatu SSL Let’s Encrypt trzeba go w nim włączyć.
Przechodzimy do pliku konfiguracyjnego DirectAdmina:
/usr/local/directadmin/conf/directadmin.conf |
I uruchamiamy 2 parametry:
enable_ssl_sni= 1 letsencrypt= 1 |
Następnie musimy przebudować konfiguracje Custombuild:
cd /usr/local/directadmin/custombuild ./build update ./build rewrite_confs |
Po tych działaniach w panelu DirectAdmin powinna być widoczna możliwość dodawania certyfikatu SSL
Logujemy się do panelu DirectAdmin, przechodzimy co „Certyfikaty SSL”
Wybieramy „Darmowy i automatyczny certyfikat od Let’s Encrypt” tak jak widoczne jest na zrzucie ekranu.
Wypełniamy niezbędne dane i klikamy „zapisz”
Jeśli wszystko przejdzie prawidłowo, to powinna się ukazać informacja podobna do poniższej:
Po ponownym przejściu do „Certyfiakty SSL„, ujrzymy że certyfikat został dodany i będzie widoczny czas odnowienia certyfikatu:
„Let’s Encrypt jest w użyciu. Automatyczne odnowienie za 59 dni”
Ograniczenia darmowych certyfikatów SSL
Niestety darmowe certyfikaty mają swoje ograniczenia. Dla Let’s Encrypt aktualne ograniczenia znajdują się w https://letsencrypt.org/docs/rate-limits/
O tym należy pamiętać
- Certyfikat generowany na 90 dni. Istnieje możliwość automatycznego odnawiania certyfikatu.
- Maksymalnie można wystawić jeden certyfikat dla 100 domen (w tym subdomen)
- 5 certyfikatów na domenę (wliczając subdomeny) w ciągu 7 dni
- 500 żądań z danego adresu IP na 3 godziny
Podsumowanie
Niestety darmowe certyfikaty mają swoje ograniczenia i są dobre dla właścicieli domen z mała ilością subdomen. Jeśli domen/subdomen jest więcej niż 100, to tutaj należy skorzystać z płatnego certyfikatu SSL, który nie posiada takich ograniczeń. Ceny wildcardowych certyfikatów wahają się od kilkuset do kilku tysięcy złotych.