Domena witryny musi mieć szyfrowanie SSL/TLS, jeśli zamierza zdobyć odwiedzających. Certyfikaty SSL/TLS zapewniają silne połączenie między serwerami internetowymi i przeglądarkami. Wcześniej bezpieczeństwo nie było poważnym problemem. Stosunkowo powszechne było dostarczanie danych za pośrednictwem ustalonego protokołu HTTP. W dzisiejszych czasach kanał używany do komunikowania się z serwerem musi być zabezpieczony, ponieważ cyberprzestępstwa, w tym kradzież tożsamości, oszustwo karty kredytowe i szpiegostwo rośnie.
Urząd Certyfikatu (CA) o nazwie Let's Encrypt oferuje bezpłatne certyfikaty SSL/TLS, umożliwiając szyfrowanie HTTPS na serwerach internetowych. Jest to weryfikowane domeny, więc dedykowany adres IP nie jest konieczny. Zazwyczaj zaleca się włączenie certyfikatu SSL na Twojej stronie w celu poprawy rankingu SEO, szczególnie w Google.
Działanie Let's Encrypt
Szyfrujmy potwierdza własność domeny przed dostarczeniem certyfikatu. Gdy token jest sprawdzany, serwer walidacji Let's Encrypt przedstawia żądanie HTTP w celu uzyskania pliku i zapewnia, że rekord DNS domeny wskazuje na hosting klienta Let's Encrypt.
Wymagania
Musisz wykonać następujące czynności przed użyciem Let's Encrypt:
Postępując zgodnie z instrukcjami w tej pierwszej konfiguracji serwera dla Ubuntu 20.04 Samouczek, raz Ubuntu 20.04 Serwer jest skonfigurowany, wraz z zaporą i użytkownikiem bez korzeni z dostępem do sudo.
Nazwa domeny z rejestracją. W tym artykule MyFirstProject1.com zostanie użyte. Możesz kupić domenę.
Na twoim serwerze skonfigurowane są następujące dwa rekordy DNS.
Nginx powinien zostać zainstalowany i musisz upewnić się, że Twoja domena ma blok serwerowy.
Kroki instalacji Let's Szyfruj na cyfrowym oceanie
Główne kroki do instalacji Let's Szyfruj na cyfrowym oceanie to:
Instalowanie Certbot
Oprogramowanie CertBot jest główną potrzebą korzystania z Let's Encrypt w celu uzyskania certyfikatu SSL. Do instalacji CertBot i jego wtyczki Nginx używamy następującego polecenia:
Większość wspólnych firm hostingowych i niektóre firmy hostingowe w chmurze zawierają CertBot lub podobną wtyczkę w panelu hostingowym, który umożliwia zakup, odnawianie i administrowanie certyfikatami SSL/TLS, mając kliknięcia.
Podczas gdy „Python3-Certbot-Nginx” to pakiet używany:
Natychmiast zademonstruj Let's Encrypt CA, że jesteś odpowiedzialny za stronę internetową.
Certbot jest teraz gotowy do użycia, ale niektóre z jego ustawień muszą zostać potwierdzone, zanim będzie mógł automatycznie skonfigurować SSL dla Nginx.
Weryfikacja konfiguracji Nginx
CertBot powinien być w stanie automatycznie skonfigurować SSL. Musi być w stanie zlokalizować odpowiedni blok serwera w konfiguracji Nginx. Mówiąc dokładniej, osiąga to, szukając dyrektywy nazwy serwera odpowiadającej domenie, o którą żądasz certyfikatu.
Powinien już mieć poprawnie skonfigurowaną dyrektywę nazwy serwera w bloku serwerowym dla domeny, której użyjemy w „/etc/nginx/witryna.com ”.
Otwórz plik konfiguracji domeny w Nano lub drugi edytor tekstu, aby sprawdzić, czy Twój plik zostanie otwarty, jeśli istnieje, zamknij edytor i przejdź do następnej akcji. Nazwa serwera będzie wyglądać jak „Server_name Domain_name www.Nazwa domeny.com ”, jak pokazano na fragmencie poniżej.
Jeśli to się nie zmieni, odpowiada. Sprawdź składnię modyfikacji konfiguracji po zapisaniu pliku i zamknięciu edytora. Użyj kolejnych instrukcji, aby sprawdzić:
$ sudo nginx -t
Załaduj nginx, aby załadować zaktualizowaną konfigurację po upewnieniu się, że składnia pliku konfiguracyjnego jest poprawna:
$ sudo systemCtl Reload nginx
Teraz certbot może automatycznie zlokalizować odpowiedni blok serwera i go zaktualizować. SystemCTL odpowiada za kontrolę i zarządzanie systemem SystemD i zarządzaniem usługami. Służy jako zastąpienie Demona Systemu v Init i składa się z kilku bibliotek, narzędzi i demonów administracji systemowej.
Włączanie HTTPS przez zaporę
Wymagane zalecenia doradzają, aby włączyć zaporę UFW. Musisz zmienić ustawienia, aby umożliwić ruch HTTPS.
Opcja statusu UFW umożliwia nam wyświetlanie najnowszego stanu UFW. Status UFW wyświetla listę przepisów, jeśli UFW jest aktywowane. Oczywiście, jeśli masz niezbędne poświadczenia, możesz uruchomić polecenie jedynie jako użytkownik root lub przez prefiksowanie go z sudo.
Włącz pełny profil Nginx i usuń niepotrzebny zasiłek profil Nginx HTTP, aby umożliwić ruch HTTPS:
Poprzedni fragment pokazuje metodę umożliwiającą pełny ruch z Nginx, a drugi pokazuje, jak usunąć drugi ruch, na który dozwolony jest.
Jak uzyskać certyfikat SSL
Za pomocą wtyczek CertBot oferuje kilka sposobów uzyskania certyfikatów SSL. Konfiguracja i przeładowanie konfiguracji Nginx będą obsługiwane przez wtyczkę Nginx w razie potrzeby.
Skorzystaj z certyfikatu, aby od razu uzyskać certyfikat SSL domeny. Aby wskazać domenę, potrzebny jest argument „-D”. Jeden certyfikat jest wydawany przez Let's Encrypt dla subdomeny WWW i korzenia. Konieczne jest uzyskanie certyfikatu dla obu wersji, ponieważ posiadanie tylko jednej dla dowolnej wersji spowoduje ostrzeżenie w przeglądarce, jeśli odwiedzający wyświetli drugą wersję. Dla nowych użytkowników CertBot prosi Cię o przedstawienie wiadomości e -mail i potwierdzić, że zgadzasz się na warunki usługi.
Gdyby to się powiedzie, poprosi cię o dokonanie wyboru i naciśnięcie Enter. Po zaktualizowaniu konfiguracji Nginx ponownie załaduje i rozważy nowe ustawienia. Po zakończeniu Certbot poinformuje Cię, że procedura się powiodła.
Wniosek
W tym przewodniku pokazaliśmy, jak zainstalować i korzystać z Certbot oprogramowania Let's Encrypt, otrzymywać certyfikat SSL, skonfiguruj automatyczne aktualizację certyfikatu SSL i skonfigurować Nginx. Ponadto dostarczyliśmy również kilka przykładów sytuacji, które mogą spowodować problemy z kompilacją podczas korzystania z Let's Encrypt Digital Ocean.