Certyfikat SSL Let’s Encrypt
Może na początek przedstawię czym jest certyfikat ssl i dlaczego akurat Let’s Encrypt. Użycie certyfikatu SSL umożliwia szyfrowanie ruchu poprzez użycie protokołu HTTPS. Zapewnia to ograniczenie możliwości podsłuchiwania ruchu sieciowego. Jak widać, dość przydatna rzecz.
A czemu akurat Let’s Encrypt? Ponieważ jest to dość nie dawno powstały urząd certyfikacji, którego głównym celem jest „walka” z używanie niezaszyfrowanego protokołu HTTP. Realizuje on swoją wizję dostarczając darmowe certyfikaty TLS (jest to bardziej rozwinięta wersja protokołu SSL), oraz zestaw narzędzi do zarządzania i integracji certyfikatów.
Mój przypadek
Jakiś czas temu okazało się, że mój domowy serwer odmówił posłuszeństwa i byłem zmuszony przenieść się gdzieś… No ale właśnie, gdzie i jak. Zawsze w takich sytuacjach kombinowałem jakąś maszynę na szybko i uruchamiałem wszystko na szybko. Tym razem jednak stwierdziłem, że wystarczy mi takich przygód. Szybkie poszukiwania, główne kryterium cena i padło na webd.pl. Ogólnie nie narzekam. Jednak szybko okazało się, że webd.pl nie wspiera Let’s Encrypt. Można kupić u nich certyfikat, no ale po co jak można mieć za darmo. Moje rozwiązanie problemu ma jedną wadę. Trzeba będzie przeprowadzać podobny proces co 3 miesiące, bo tyle ważny jest certyfikat. Na chwilę obecną automatów na webd.pl nie ma. Jeżeli ktoś poszukuje na to z tego co się orientuję to ovh.pl takowe posiada.
Generowanie certyfikatu
Narzędzie do generowania certyfikatu przeznaczone jest na platformę Linux, której w chwili obecnej nie posiadałem, stąd na szybko postawiłem wirtualną maszynę, uruchomiłem ssh i wziąłem się do roboty.
Jeżeli tak jak ja macie czysty system Linux bez dodatków to należy zainstalować git’a
sudo apt-install git
Następnie klonujemy odpowiednie repozytorium
git clone https://github.com/letsencrypt/letsencrypt
Teraz przechodzimy do katalogu letsencrypt
cd letsencrypt
Następnie uruchamiamy skrypt. Po każdym „-d” podajemy adres dla którego chcemy wygenerować certyfikat, w moim przypadku wyglądało to następująco:
./letsencrypt-auto certonly -a manual --rsa-key-size 4096 -d mati-ck.pl -d www.mati-ck.pl
Podajemy hasło użytkownika i skrypt rusza.
Następnie musimy odpowiedzieć na pytanie czy zgadzamy się z warunkami: jeżeli tak klepiemy „A” – jak agree, lub „C” – jak Cancel.
Kolejnym pytaniem jest: „Czy chciałbyś udostępnić swój adres e-mail dla Electronic Frontier?”, osobiście nie lubię spamu więc poszło „N”.
Następnie pada ostrzeżenia, że jeżeli używasz certbota w trybie manualnym na komputerze, który nie jest Twoim serwerem to upewnij się, że jesteś bezpieczny. Odpowiadamy „Y” – o ile jesteśmy pewni.
W kolejnym punkcie proszeni jesteśmy otworzenie pliku zawierające wygenerowane dane pod ścieżką http://twoja-domena.pl/.well-known/acme-challenge/nazwa-pliku-podana-przez-narzędzie
Jeżeli stworzymy plik o podanej nazwie i treści potwierdzamy w konsoli „Enterem”. Potem następuje generowanie odpowiednich plików potrzebnych do certyfikacji.
Potrzebne nam pliki powinny znajdować się w katalogu /etc/letsencrypt/live/twoja-domena.pl/
Ustawienia hostingu
Skoro mamy wszystko co potrzebne, zabieramy się za nasz hosting.
W sekcji „Zabezpieczenia” klikamy w „SSL/TLS”. Tam na samym dole znajduje się opcja „Zarządzaj witrynami internetowymi chronionymi protokołem SSL” i tam przechodzimy.
Na dole wybiera z listy wybieramy interesującą nas domenę i w pole „Certyfikat: (CRT)” wklejamy treść pliku cert.pem. W pole „Klucz prywatny (KEY)” wklejamy treść pliku privkey.pem. Klikamy Zainstaluj certyfikat i to tyle. Dzięki temu darmowy certyfikat SSL mamy zainstalowany.
Powinniśmy jeszcze zmodyfikować plik .htaccess dodając do niego treść.
# BEGIN Force SSL
# This should be the first rule before other rules
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
</IfModule>
# END Force SSL
13 thoughts on “Certyfikat SSL Let’s Encrypt na hostingu webd.pl”
Dzięki wielkie! Mam na webd.pl hosting i osobiście nie siedzę w certyfikatach czy backendzie na codzień i po prostu bym tego nie rozkminił. Dzięki artykułowi zrobię certyfikat za darmo i szybko! Jeśli wpadłeś albo wpadniesz na jakiś sposób automatyzacji to byłbym wdzięczny gdybyś zaktualizował artykuł 🙂
Jeżeli tylko uda mi się coś zrobić w tej materii na pewno poinformuję 🙂
Dzięki!
Obecnie mogę cieszyć się certyfikatem SSL na swoim blogu.
Pozdrawiam.
Niestety nie ma opcji automatyzacji na webd. Np. na kei robi się to automatycznie co upraszcza życie w przypadku kilkudziesięciu domen.
Witam, też niestety ręcznie musimy się co parę miesięcy męczyć z let’s encrypt. Chyba pora zmienić hosting na nowocześniejszy.
Witam, czy to nadal dziala? (dodam przy okazji, ze jestem zupelnie nieobeznany z linuxem)
Probowalem zainstalowac, lecz po komendzie:
./letsencrypt-auto certonly -a manual –rsa-key-size 4096 -d wsianadal.com -d http://www.wsianadal.com
dostalem taki komunikat
equesting to rerun ./letsencrypt-auto with root privileges…
Skipping bootstrap because certbot-auto is deprecated on this system.
Your system is not supported by certbot-auto anymore.
Certbot cannot be installed.
Please visit https://certbot.eff.org/ to check for other alternatives.
wielkie dzieki za pomoc
Witam serdecznie,
Osobiście polecam zmienić hosting na taki, który oferuje automatyczne i darmowe odnawianie certyfikatów.
Z webd nie miałem doczynienia już kilka lat, wiec niestety ciężko mi coś powiedzieć na ten temat.
Pozdrawiam
Też się męczyłem z manualnym odnawianiem certyfikatu na stronie, którą się opiekowałem, która była trzymana na hostingu webd.pl. W końcu wykombinowałem automatyzację. Wystarczy w cPanel wygenerować token w „Manage API Tokens”, wrzucić skrypt https://github.com/kukawski/le-cpanel-updater oraz ustawić w cPanelu zadanie crona (info w README). Może się komuś przyda.
Artykuł ma już 6 lat, a na webd niestety wciąż nie ma możliwości automatyzacji tej czynności. Czy są może porównywalnie cenowo hostingi, które oferują taką możliwość?
Niestety nie mam wiedzy w tym temacie. Podejrzewam, że może być cieżko znalażć coś w tak niskiej cenie jak webd. Osobiście korzystam z zenbox.pl, który jest zdecydowannie droższy. Seohost.pl z tego co widziałem ma plany od 67zł/rok, możesz zapoznać się z ich ofertą.
hostido np.
Seohost czy hostido to obecnie najlepsze hostingi pod względem wydajności i ceny, możesz sprawdzić recenzje seohost na https://wersito.pl/recenzja-seohost/
Polać temu wyżej, seohost robi robotę!