Będziemy używać różnych plików konfiguracyjnych serwera Nginx, ponieważ pomaga to uniknąć typowych błędów, a także pomaga w utrzymaniu domyślnych plików konfiguracyjnych jako opcji awaryjnej.
Krok 1:
Jak zawsze, najpierw zaktualizuj APT.
$ sudo apt aktualizacja
Krok 2:
Teraz zaktualizuj swój APT.
$ sudo apt upgrade
Krok 3:
Teraz pobierz i zainstaluj narzędzie Certbot, które pomoże Ci uzyskać certyfikat SSL od Let's Encrypt. Wykonaj następujące polecenie terminala, aby zainstalować Certbota przez APT.
$ sudo apt install certbot python3-certbot-nginx
Spowoduje to zainstalowanie certbota, ale nadal będziesz musiał skonfigurować plik konfiguracyjny Ngnix do instalacji certyfikatu SSL.
Krok 4:
Powinieneś skonfigurować blok serwera przed przejściem do następnego kroku i jest to niezbędny krok w przypadku hostowania wielu witryn. Utworzymy nowy katalog w ścieżce „/var/www” i pozostawimy domyślny katalog nietknięty. Wykonaj następujące polecenie, aby utworzyć nowy katalog.
$ sudo mkdir -p /var/www/przyklad.com/html
Krok 5:
Teraz nadaj uprawnienia własności do tego katalogu za pomocą następującego polecenia terminala.
$ sudo chown -R $USER:$USER /var/www/przyklad.com/html
Krok 6:
Teraz upewnij się, że uprawnienia zostały przyznane, wykonując następujące polecenie terminala:.
$ sudo chmod -R 755 /var/www/przyklad.com
Krok 7:
Teraz utwórz indeks.plik html przy użyciu twojego ulubionego edytora tekstu, ja używam edytora tekstu gedit.
$ sudo gedit /var/www/przyklad.com/html/indeks.html
Dodaj następujący tekst do tego pliku HTML.
Sukces! Przykład.działa blok serwera com!
Zapisz i zamknij plik.
Krok 8:
Teraz utwórz nowy plik konfiguracyjny w katalogu z dostępnymi witrynami za pomocą ulubionego edytora tekstu, wykonując następujące polecenie.
$ sudo gedit /etc/nginx/strony-dostępne/przykład.com
Teraz dodaj następujący tekst w tym pliku konfiguracyjnym dla nowego katalogu i nazwy domeny.
serwerposłuchaj 80;
słuchaj [::]:80;
katalog główny /var/www/przykład.com/html;
indeks indeksu.indeks html.indeks htm.nginx-debian.html;
przykład nazwa_serwera.com www.przykład.pl;
Lokalizacja /
try_files $uri $uri/ =404;
Zapisz i zamknij ten plik, aby uzyskać efekty.
Krok 9:
Teraz włącz nowy katalog do uruchamiania Nginx za pomocą następującego polecenia terminala.
$ sudo ln -s /etc/nginx/dostępne strony/przykład.com /etc/nginx/z obsługą witryny/
Krok 10:
Aby uniknąć problemów z pamięcią zasobnika z haszowaniem nazwy serwera, podaj jedną wartość w następującym pliku konfiguracyjnym.
$ sudo gedit /etc/nginx/nginx.konfTeraz usuń znak # z opcji hash_bucket_size, aby go odkomentować. Zapisz zamknij plik.
Krok 11:
Teraz wpisz następujące dwa polecenia, aby usunąć błędy składni i ponownie uruchomić serwer Nginx.
$ sudo nginx -t$ sudo systemctl restart nginx
Krok 12:
Teraz musisz zweryfikować i potwierdzić pliki konfiguracyjne Nginx. Ponieważ certbot musi znaleźć poprawny blok serwera w konfiguracji Nginx, szuka więc nazwy serwera, która jest zgodna z żądaną domeną. Aby zweryfikować te pliki konfiguracyjne, wpisz następujące polecenie terminala:.
$ sudo nginx -t
Krok 13:
Teraz zaktualizuj reguły zapory sieciowej UFW, aby umożliwić Nginx pełne uprawnienia. Jeśli masz jakiekolwiek wcześniejsze reguły dotyczące serwera HTTP, usuń je za pomocą opcji odmowy UFW przed dodaniem następującego polecenia.
sudo ufw zezwala na 'Nginx Full'
Krok 14:
Teraz dochodzimy do punktu, w którym musimy zainstalować certyfikat SSL za pomocą oprogramowania certbot. Wykonaj następujące polecenie terminala.
$ sudo certbot --nginx -d przykład.com-d www.przykład.com
Jeśli używasz certbota po raz pierwszy, zostaniesz poproszony o podanie adresu e-mail i monitu o warunki, zgódź się na to, a będziesz mógł przejść do następnego kroku.
Krok 15:
Teraz zostaniesz poproszony o skonfigurowanie ustawień HTTPS, wybierz niezbędne opcje i naciśnij przycisk Enter, aby kontynuować. Certbot zainstaluje wszystkie wymagane certyfikaty i zaktualizuje pliki Nginx; Twój serwer załaduje się ponownie z komunikatem informującym, że proces się powiódł.
Krok 16:
Teraz, po zainstalowaniu certyfikatów, powinieneś również upewnić się, że te certyfikaty są automatycznie odnawiane po określonym czasie. Wykonaj następujące dwa polecenia terminala, aby zapewnić możliwość tego procesu this.
$ sudo systemctl status certbot.regulator czasowy$ sudo certbot renew --dry-run
Wniosek:
Do tej pory omówiliśmy, jak zbudować oddzielny blok serwera w Nginx, zainstalować certyfikaty za pomocą narzędzia oprogramowania Certbot z serwerów urzędów certyfikacji Let's Encrypt oraz jak zastosować proces odnawiania tych certyfikatów.