Jak korzystać z Let’s Encrypt with Apache na Ubuntu Server

Certyfikaty SSL mogą być skomplikowane do skonfigurowania w systemie Linux, co sprawia, że wiele osób rezygnuje z implementacji protokołu HTTPS na swoich stronach internetowych. Na szczęście, usługa Let’s Encrypt stara się uprościć ten proces, umożliwiając łatwe skonfigurowanie SSL w systemie Linux w sposób zrozumiały dla niemal każdego użytkownika. Możesz wykorzystać Let’s Encrypt w połączeniu z Apache na serwerze Ubuntu, aby szybko i prosto ustawić certyfikaty SSL.

Usługa Let’s Encrypt jest całkowicie darmowa i dostępna na zawsze w systemie Linux. Nie poniesiesz żadnych kosztów związanych z jej użytkowaniem. Warto jednak pamiętać, że certyfikaty nie są wieczne i wymagają od użytkowników odnawiania co 90 dni.

Narzędzie Let’s Encrypt wspiera dwa główne serwery internetowe działające na systemie Linux: Apache i Nginx. W tym poradniku krok po kroku zaprezentujemy, jak uzyskać oraz skonfigurować certyfikat SSL z Let’s Encrypt do użytku z Apache na serwerze Ubuntu.

Uwaga: Let’s Encrypt działa na wszystkich systemach operacyjnych Linux. Jeśli nie korzystasz z Ubuntu, kliknij tutaj, aby sprawdzić, jak skonfigurować certyfikat w innym systemie operacyjnym serwera.

Pobieranie Certbota

Let’s Encrypt w większości przypadków automatyzuje proces na systemie Linux za pomocą narzędzia Certbot, które pozwala szybko uzyskać certyfikat SSL na serwerze Ubuntu.

Certbot nie jest domyślnie zainstalowany na serwerze Ubuntu. Aby go używać, należy aktywować repozytorium oprogramowania innej firmy (PPA) i zainstalować go stamtąd. Należy jednak pamiętać, że nie każda wersja Ubuntu obsługuje PPA od razu po instalacji. Aby uzyskać dostęp do PPA w Ubuntu, musisz zainstalować pakiet o nazwie software-properties-common.

sudo apt install software-properties-common

Po zainstalowaniu pakietu „software-properties-common”, wprowadź poniższe polecenie, aby dodać repozytorium Certbota do Ubuntu.

sudo add-apt-repository ppa:certbot/certbot

Po dodaniu repozytorium, zaktualizuj źródła oprogramowania serwera Ubuntu, aby uzyskać dostęp do PPA Certbota, używając polecenia update.

sudo apt update

Gdy źródła oprogramowania są już aktualne, możesz zainstalować Certbot za pomocą Apt.

sudo apt install python-certbot-apache

Włączenie ruchu HTTPS

Usługa Let’s Encrypt umożliwia użytkownikom szybkie skonfigurowanie certyfikatu SSL w systemie Linux, eliminując potrzebę ręcznego przeprowadzania wszystkich operacji. Jednym z kroków, które musisz wykonać, jest włączenie ruchu HTTPS dla Apache 2 na serwerze.

Aby aktywować ruch HTTPS w serwerze Apache, upewnij się, że zapora systemu Ubuntu jest włączona i działa. Następnie użyj poniższych poleceń UFW, aby umożliwić ruch HTTPS.

Uwaga: jeśli zapora nie działa, aktywuj ją poleceniem sudo ufw, a następnie uruchom ponownie.

sudo ufw allow 'Apache Full'

Jeśli polecenie UFW zakończy się sukcesem, możesz przejść do aktywacji protokołu HTTPS. Możesz sprawdzić status zapory, aby upewnić się, że działa, wykonując polecenie ufw status.

sudo ufw status

Generowanie certyfikatu SSL

Po skonfigurowaniu serwera Ubuntu do obsługi SSL oraz zainstalowaniu Certbota, możemy przystąpić do generowania nowego certyfikatu SSL dla serwera Apache.

Aby stworzyć nowy certyfikat SSL przy użyciu Certbota, uruchom polecenie certbot z odpowiednim przełącznikiem dla Apache. Pamiętaj, że certyfikat będzie działał tylko wtedy, gdy domena podana w poleceniu będzie zgodna z plikiem konfiguracyjnym witryny znajdującym się w /etc/apache2/sites-available/.

Uwaga: nie zapomnij zamienić mywebsite.com i www.mywebsite.com na nazwę swojej domeny w poleceniu Certbota.

sudo certbot --apache -d mywebsite.com -d www.mywebsite.com

Jeśli polecenie Certbota zakończy się pomyślnie, otrzymasz monit dotyczący ustawień Apache. Przeczytaj uważnie sugestie i wybierz opcję, która najlepiej odpowiada Twoim potrzebom. Po zakończeniu tego etapu Twój certyfikat SSL będzie gotowy do użycia!

Odnowienie certyfikatu SSL

Certyfikaty SSL wydane przez Let’s Encrypt mają ważność 90 dni, więc jeśli planujesz ich używać na swojej stronie, musisz je odnawiać. Na szczęście Certbot posiada zautomatyzowane zadanie Cron, które wykonuje tę operację za Ciebie.

Skrypt automatycznego odnawiania Cron można znaleźć w katalogu /etc/cron.d/ na Twoim serwerze, a jego zawartość możesz sprawdzić, wykonując odpowiednie polecenie.

Ręczne odnawianie

Dzięki automatycznemu skryptowi odnawiania Let’s Encrypt, Twój serwer Apache powinien zawsze posiadać aktualny certyfikat SSL. Czasami jednak mogą wystąpić problemy, dlatego warto wiedzieć, jak ręcznie przeprowadzić odnawianie certyfikatu SSL.

Aby odnowić certyfikat SSL dla Apache na serwerze Ubuntu, otwórz terminal, zaloguj się przez SSH i wykonaj następujące kroki.

Krok 1: Uruchom polecenie certbot renew z przełącznikiem do uruchomienia w trybie testowym. Pozwoli to na symulację procesu odnawiania, co pozwoli Ci zidentyfikować potencjalne problemy.

sudo certbot renew --dry-run

Krok 2: Jeśli test zakończy się pomyślnie, możesz bezpiecznie uruchomić rzeczywiste polecenie odnawiania Certbota, tym razem bez przełącznika „dry-run”.

sudo certbot renew

Jeżeli polecenie odnawiania przebiegnie pomyślnie, Twój certyfikat SSL zostanie odnowiony i będzie działał dalej.