Zainstaluj Nginx na Debianie 12

Zainstaluj Nginx Na Debianie 12



W tym przewodniku pokażemy, jak zainstalować i skonfigurować Nginx na Debianie 12.

Warunki wstępne:

Do wykonania kroków przedstawionych w tym przewodniku potrzebne są następujące komponenty:

  • Prawidłowo skonfigurowany system Debian 12. Wymeldować się jak zainstalować Debiana na maszynie wirtualnej VirtualBox .
  • Dostęp dla użytkownika innego niż root z uprawnieniami sudo. Dowiedz się więcej o zarządzanie uprawnieniami Sudo za pomocą /etc/sudoers w Debianie .

Nginx na Debianie

Opracowany i utrzymywany przez Projekt Debiana , Debian jest plikiem popularny , bezpłatna i otwarta dystrybucja Linuksa. Debian jest dobrze znany ze swojej stabilności, bezpieczeństwa i wsparcia społeczności. Debian 12 (nazwa kodowa „mól książkowy”) jest najnowszą stabilną wersją. Dowiedz się więcej o aktualizacja Debiana 11 do Debiana 12 .







Nginx to darmowy serwer WWW o otwartym kodzie źródłowym, znany z wysokiej wydajności, skalowalności, wydajności pamięci i bezpieczeństwa. Co więcej, może również działać jako odwrotne proxy, moduł równoważenia obciążenia, pamięć podręczna HTTP itp.



W Debianie Nginx jest bezpośrednio dostępny z oficjalnych repozytoriów pakietów. Może być jednak nieco nieaktualny z tego powodu Cykl wydawania pakietów Debiana . Na szczęście Nginx oferuje oficjalne repozytorium Debiana z najnowszymi wydaniami.



Metoda 1: Instalacja Nginx z repozytorium Debiana

Najpierw otwórz okno terminala i zaktualizuj pamięć podręczną repozytorium APT:





$ sudo trafna aktualizacja

Nginx jest dostępny jako pakiet „nginx”:



$ apt pokaż nginx

Aby zainstalować Nginx, uruchom następujące polecenie:

$ sudo trafny zainstalować nginx

Metoda 2: Instalowanie Nginx z repozytorium Nginx

Konfigurowanie repozytorium Nginx APT zapewnia najnowszą wersję Nginx. Może jednak powodować konflikt z innymi pakietami Nginx z domyślnego repozytorium.

Instalowanie wymagań wstępnych

Najpierw zainstaluj wymagane pakiety:

$ sudo trafny zainstalować curl gnupg2 ca-certyfikaty lsb-release debian-archive-keyring

Importowanie klucza podpisującego GPG

Klucz podpisujący Nginx jest wymagany, aby APT mógł zweryfikować autentyczność pobranych pakietów. Chwyć klucz do podpisu:

$ zwiń https: // nginx.org / Klucze / nginx_signing.key | gpg --kochany | sudo trójnik / usr / udział / breloczki / nginx-archive-keyring.gpg > / rozw / zero

Sprawdź, czy zaimportowany został właściwy klucz:

$ gpg --próba --cichy --bez breloka --import --opcje importu import-pokaz / usr / udział / breloczki / nginx-archive-keyring.gpg

Dane wyjściowe powinny wydrukować 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 jako odcisk palca klucza. Jeśli nie, usuń plik z /usr/share/keyrings/nginx-archive-keyring.gpg i uruchom ponownie proces.

Dodanie repozytorium Nginx APT

Po zainstalowaniu klucza podpisującego możemy teraz dodać repozytorium Nginx do APT. Nginx oferuje dwie gałęzie wydań:

stabilny : Lepsza kompatybilność z modułami innych firm. Otrzymuje tylko krytyczne poprawki.

linia główna : Nowe funkcje mogą mieć wpływ na kompatybilność modułu. Otrzymuje jednak więcej poprawek błędów, poprawek bezpieczeństwa i poprawek krytycznych.

Nginx oficjalnie zaleca wdrażanie gałęzi głównej we wszystkich przypadkach. Aby dodać główną gałąź Nginx, uruchom następujące polecenie:

$ Echo „deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/mainline/debian `lsb_release -cs` nginx” | sudo trójnik / itp / trafny / źródła.lista.d / nginx.list

Jeśli zamiast tego chcesz mieć stabilną gałąź Nginx, uruchom następujące polecenie:

$ Echo „deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/debian `lsb_release -cs` nginx” | sudo trójnik / itp / trafny / źródła.lista.d / nginx.list

Przypinanie repozytorium

Aby zmusić APT do korzystania z repozytorium Nginx podczas obsługi pakietów związanych z Nginx, włączamy przypinanie repozytorium:

$ Echo -To jest 'Pakiet: * \N Pin: pochodzenie nginx.org \N Pin: wydanie o=nginx \N Priorytet pinów: 900 \N ' | sudo trójnik / itp / trafny / preferencje.d / 99nginx

Instalacja Nginxa

Po skonfigurowaniu nowego repozytorium zaktualizuj pamięć podręczną repozytorium APT:

$ sudo trafna aktualizacja

Sprawdź informacje o pakiecie Nginx:

$ apt pokaż nginx

Na koniec zainstaluj Nginx:

$ sudo trafny zainstalować nginx

Regulacja zapory sieciowej

Debian posiada preinstalowaną zaporę sieciową iptables (netfilter). Jednak dla ułatwienia użytkowania zaleca się użycie Zapora sieciowa UFW . Jest to w zasadzie bardziej przyjazny dla użytkownika nakładka na netfilter.

Domyślnie UFW blokuje Nginxowi dostęp do sieci. Aby zezwolić na dostęp zarówno poprzez protokół HTTP/HTTPS, uruchom następującą komendę:

$ sudo ugh, pozwól 80 , 443 / TCP

Jeśli chcesz mieć dostęp tylko przez HTTP, użyj zamiast tego następującego polecenia:

$ sudo ugh, pozwól 80 / TCP

Jeśli chcesz mieć dostęp tylko przez HTTPS, użyj zamiast tego następującego polecenia:

$ sudo ugh, pozwól 443 / TCP

Sprawdź, czy reguły zostały pomyślnie dodane:

$ sudo stan ufw

Weryfikacja instalacji Nginx

Istnieje kilka sposobów sprawdzenia, czy instalacja Nginx przebiegła pomyślnie. Najpierw sprawdź status usługi Nginx:

$ sudo status systemctl nginx

Jeśli nie działa, uruchom serwer:

$ sudo systemctl uruchom Nginx

Teraz otwórz następujący adres URL w przeglądarce internetowej:

$ http: // localhost_or_server_ip /

Powinieneś wylądować na domyślnej stronie powitalnej Nginx.

Zarządzanie procesem Nginx

Po instalacji Nginx rejestruje usługę w systemd. Za pomocą usługi możemy łatwo zarządzać procesami Nginx.

Stan Nginxa

Poniższe polecenie zwraca status Nginx:

$ sudo status systemctl nginx

Zatrzymywanie Nginxa

Następujące polecenie zatrzymuje Nginx:

$ sudo systemctl zatrzymaj nginx

Uruchamiam Nginxa

Jeśli Nginx nie jest uruchomiony, użyj następującego polecenia, aby uruchomić serwer:

$ sudo systemctl uruchom Nginx

Ponowne ładowanie Nginxa

Nginx nie wymaga pełnego restartu, aby zastosować jakiekolwiek zmiany w swojej konfiguracji. W takim przypadku możemy ponownie załadować usługę Nginx bez zrywania połączenia:

$ sudo systemctl załaduj ponownie nginx

Ponowne uruchamianie Nginxa

Aby zrestartować serwer Nginx, uruchom następujące polecenie:

$ sudo systemctl uruchom ponownie Nginx

Ponowne ładowanie lub ponowne uruchamianie Nginx

Jeśli nie jesteś pewien, czy załadować ponownie, czy zrestartować Nginx, użyj następującego polecenia:

$ sudo systemctl - załaduj ponownie lub uruchom ponownie nginx

W takim przypadku systemd automatycznie decyduje o najlepszym sposobie działania.

Dodatkowe wskazówki 1: Bloki Nginx

Podobnie jak hosty wirtualne w Apache, Nginx obsługuje również wiele hostów na jednym serwerze.

Oto fikcyjna konfiguracja, która obsługuje dwa serwery wirtualne ( źródło ):

http {

indeks indeks. HTML ;

serwer {

nazwa_serwera www. domena1 . z ;

dzienniki access_log / domena1. dostęp . dziennik główny ;

źródło / był / www / domena1. z / htdocs ;

}

serwer {

nazwa_serwera www. domena2 . z ;

dzienniki access_log / domena2. dostęp . dziennik główny ;

źródło / był / www / domena2. z / htdocs ;

}

}

Plik zawiera wiele bloków w pliku konfiguracyjnym, z których każdy opisuje różne właściwości. Najważniejszymi blokami są bloki serwera i lokalizacji:

  • serwer : Opisuje serwer wirtualny obsługujący żądania klientów określonego typu. Dla wielu serwerów wirtualnych może istnieć wiele bloków serwerów. Połączenia przychodzące są przekierowywane do różnych bloków serwerów na podstawie żądanej nazwy domeny, adresu IP i portu.
  • Lokalizacja : Jest to podblok w bloku serwera. Opisuje, jak Nginx powinien obsługiwać przychodzące żądania klientów dotyczące różnych zasobów.

Konfiguracje te są przechowywane w plikach w /etc/nginx/sites-available . Dla każdego bloku serwera mogą istnieć unikalne pliki. Konfiguracje są stosowane po umieszczeniu pod /etc/nginx/sites-enabled . Ogólnie rzecz biorąc, pliki konfiguracyjne z dostępnych witryn są dowiązane symbolicznie do witryn obsługujących.

Dodatkowe wskazówki 2: Ważne pliki i katalogi Nginx

Oto krótka lista ważnych plików i katalogów Nginx:

  • /etc/nginx : Katalog nadrzędny, w którym znajdują się wszystkie konfiguracje Nginx.
  • /etc/nginx/sites-available : Zawiera pliki bloków serwera. Pliki konfiguracyjne nie są używane.
  • /etc/nginx/sites-enabled : Obsługuje również bloki serwerów dla poszczególnych lokacji. Generalnie są to dowiązania symboliczne z dostępnych stron. Nginx aktywnie wykorzystuje konfiguracje z tego katalogu do obsługi żądań klientów.
  • /etc/nginx/snippets : Zawiera fragmenty konfiguracji, które można zaimplementować gdzie indziej.
  • /etc/nginx/ngnix.conf : Jest to podstawowy plik konfiguracyjny Nginx. Obsługuje globalne zachowanie Nginx.

Wniosek

Zaprezentowaliśmy różne sposoby instalacji Nginx na Debianie. Pokrótce omówiliśmy także, jak zarządzać procesami Nginx za pomocą systemd. Ponadto krótko poruszyliśmy temat bloków Nginx i sposobu konfiguracji Nginx do obsługi wielu wirtualnych hostów.

Chcesz dowiedzieć się więcej o Nginx? Sprawdź Podkategoria Nginx .