Jak włączyć HTTP / 2 na serwerze Plesk

Plesk ma natywną obsługę HTTP / 2. Proces wdrażania wymaga starannego planowania, chociaż wdrożenie HTTP / 2 na Plesk jest znacznie łatwiejsze w porównaniu z innymi panelami sterowania. Ten przewodnik dotyczy różnych systemów operacyjnych. Podane tutaj kroki będą działać, o ile masz wystarczającą liczbę wersji Plesk i OpenSSL. Opiszę te wymagania w „Krok 1: Sprawdzanie wymagań”.

Należy wziąć pod uwagę, że wiele przeglądarek obsługuje protokół HTTP / 2 tylko w przypadku korzystania z certyfikatu SSL. Gdy certyfikat SSL nie jest używany, treść nie będzie obsługiwana przez HTTP / 2. Na szczęście istnieje wiele sposobów uzyskania certyfikatu SSL. Jeśli chcesz uzyskać certyfikat Let's Encrypt, zapoznaj się z tym przewodnikiem dotyczącym tworzenia certyfikatu w Plesk: Let's Encrypt w Plesk .

Chociaż istnieje duża szansa, że ​​możesz włączyć HTTP / 2 bez zauważenia go przez użytkowników lub odwiedzających (i bez przestojów), powinieneś ogłosić tę konserwację. W przypadku niepoprawnego skonfigurowania pakietu szyfrów SSL może wystąpić przestój. Na szczęście bardzo łatwo jest cofnąć zmiany za pomocą wbudowanego narzędzia Plesk.

Musisz być absolutnie pewien, że nie wprowadzono żadnych bezpośrednich zmian w plikach konfiguracyjnych, ponieważ nadpisujemy niektóre pliki konfiguracyjne. Jednak nie musisz się martwić, jeśli wprowadzasz zmiany wyłącznie przy użyciu obsługiwanych metod (w plikach niestandardowych).

Jeśli to możliwe, należy rozruszać inny serwer chmur Vultr za pomocą zwykłej instalacji Plesk i wykonać poniższe polecenia. Następnie, w oparciu o jego sukces (lub porażkę), możesz podjąć kroki, aby natychmiast debugować i / lub rozwiązać wszelkie problemy, które mogą pojawić się w przyszłych wdrożeniach HTTP / 2 na aktualnie używanych serwerach produkcyjnych.

Włączanie HTTP / 2

Krok 1: Sprawdzanie wymagań

Po wyjęciu z pudełka można włączyć obsługę HTTP / 2 dla odwrotnego proxy, które zostało wdrożone przez Plesk. Jeśli nie masz pewności, czy Twój serwer korzysta z odwrotnego proxy, powinieneś sprawdzić „Monitor usług”. Jeśli na liście znajdują się zarówno Apache, jak i Nginx, można bezpiecznie założyć, że twoja instalacja używa obecnie odwrotnego proxy. Jeśli widzisz tylko Apache lub tylko Nginx, najprawdopodobniej będziesz używać jednego serwera WWW.

Zasadniczo istnieje jeden konkretny wymóg, który jest absolutnie wymagany do działania HTTP / 2, czyli wersja OpenSSL z obsługą ALPN.

Jednak jeśli masz Plesk w wersji 12.5.30 lub nowszej zainstalowany na CentOS / RHEL 7, Ubuntu 14.04, Debian 8 lub nowszy, Nginx jest wdrażany z obsługą ALPN od razu po wyjęciu z pudełka.

Jeśli masz starszą wersję Plesk lub systemu operacyjnego, możesz zaktualizować niektóre pakiety. Jednak nie popieram tego ani nie dokumentuję. Te wersje i systemy operacyjne są bardzo stare i najlepszą praktyką byłoby ich aktualizowanie. Weź również pod uwagę zagrożenia bezpieczeństwa związane z używaniem przestarzałego oprogramowania.

W Plesk nie ma dokumentu, który wyraźnie wskazywałby, które systemy operacyjne i wersje są kompatybilne z HTTP / 2; Jeśli jednak korzystasz z najnowszej wersji (w momencie publikacji tego przewodnika), powinieneś spełniać wymagania. Możesz bezpiecznie założyć, że starsze systemy operacyjne, takie jak CentOS / RHEL 5, nie będą kompatybilne.

Oprócz wymagań wersji OpenSSL, pamiętaj, że Apache niekoniecznie musi być również kompatybilny z HTTP / 2. Obsługa HTTP / 2 dla Apache jest dostępna od wersji 2.4.17, ale w przypadku korzystania z odwrotnego proxy (który jest domyślnym ustawieniem w Plesk) wystarczy wersja Nginx. Serwer zaplecza, Apache, nie musiałby być kompatybilny. Możesz skonsultować się z „Service Managerem” w Plesk, aby upewnić się, że używasz odwrotnego proxy. Gdy na liście znajduje się Nginx, można bezpiecznie założyć, że Apache i Nginx są instalowane jako konfiguracja odwrotnego proxy, gdzie Nginx działa jako serwer frontendowy.

Poniższe polecenie pokazuje, czy Nginx został aktywowany.

/usr/local/psa/admin/bin/nginxmng -s

W przypadku OpenSSL powinieneś mieć przynajmniej wersję 1.0.1. Możesz to sprawdzić za pomocą następującego polecenia:

rpm -qa | grep openssl

Spowoduje to wydrukowanie wersji podobnej do:

openssl-1.0.1e-42.el6_7.4.x86_64

Jeśli wersja OpenSSL nie jest równa lub większa niż 1.0.1, należy zaktualizować system operacyjny. Plesk wdrożony w nowszych systemach operacyjnych będzie korzystać z OpenSSL 1.0.1 po wyjęciu z pudełka.

Krok 2: Włączanie HTTP / 2 w Plesk

W zależności od używanego systemu operacyjnego włącz HTTP / 2 za pomocą tego http2_prefnarzędzia. To polecenie powinno zostać wykonane jako root.

Włączanie HTTP / 2 na CentOS / RHEL

Wykonać: /usr/local/psa/bin/http2_pref enable

Włączanie HTTP / 2 w Ubuntu / Debian

Wykonać: /opt/psa/bin/http2_pref enable

Krok 3: Popraw pakiet szyfrów

Korzystanie z dobrego zestawu szyfrów jest niezwykle ważne dla bezpieczeństwa. Obsługa przestarzałych protokołów skutecznie zniweczy działanie twoich zabezpieczeń. Dostosuj dostępne protokoły i dostępne wersje TLS za pomocą wbudowanego narzędzia Plesk sslmng.

Na przykład włączenie następujących szyfrów i wersji TLS zapewni zgodność z HTTP / 2. Jeśli nie masz pewności co do szyfrów i wersji, które powinieneś włączyć, trzymaj się następujących ustawień:

plesk sbin sslmng --services=nginx --custom --ciphers="EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20" --protocols="TLSv1 TLSv1.1 TLSv1.2"

To polecenie zmienia się /etc/nginx/conf.d/ssl.conf. Możesz zmodyfikować ten plik bezpośrednio, ale użycie polecenia wymienionego powyżej spowoduje utrwalenie zmian w aktualizacjach Plesk.

Aby uzyskać „doskonałą poufność przekazywania” za pomocą innego zestawu szyfrów, możesz wypróbować następujące szyfry:

ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS

Dostępnych jest wiele zestawów szyfrów i powinieneś wybrać ten, który najlepiej odpowiada Twoim potrzebom. Powinieneś skonsultować się z witryną internetową, taką jak Cipherli.st , aby znaleźć pakiet szyfrów, który odpowiada Twoim potrzebom. Po określeniu go w sslmngnarzędziu zestaw szyfrów zostanie natychmiast użyty.

Aby sprawdzić obsługę TLS przeglądarki jako klienta, użyj narzędzia Qualys SSL . Jeśli nie zezwalasz na wystarczającą liczbę szyfrów lub wersji TLS, niektóre witryny mogą być niedostępne.

Krok 4: Sprawdzanie zgodności HTTP / 2

Po włączeniu HTTP / 2 powinieneś sprawdzić, czy twoje strony internetowe i serwer WWW są dostępne przez HTTP / 2. Do tego celu służy bardzo przydatne narzędzie internetowe: test HTTP / 2 .

Aby uzyskać dokładny wynik, upewnij się, że wyłączono wszystkie zwrotne serwery proxy znajdujące się przed serwerem. Na przykład, jeśli korzystasz z sieci CDN, która nie obsługuje protokołu HTTP / 2, narzędzie testowe zwróci twoją stronę internetową nie obsługującą protokołu HTTP / 2, nawet jeśli zostanie pomyślnie włączona na poziomie serwera. Podobnie jak na odwrót: jeśli masz odwrotny serwer proxy, taki jak Cloudflare przed swoją witryną (która obsługuje HTTP / 2), narzędzie zawsze zwróci HTTP / 2 jako włączony i działający, niezależnie od jego funkcjonalności na poziomie serwera .

Jeśli niektóre przeglądarki odmawiają załadowania Twojej witryny lub witryn po włączeniu HTTP / 2, powinieneś przeanalizować ustawienia SSL za pomocą narzędzia SSL Qualys .

(Opcjonalnie) Przywracanie konfiguracji HTTP / 2

W razie potrzeby, jeśli potrzebujesz czasu na debugowanie, możesz (tymczasowo) wyłączyć HTTP / 2, po prostu wykonując poniższe polecenie. Gdy chcesz ponownie włączyć HTTP / 2, po prostu uruchom polecenie aktywacji i spróbuj ponownie dotrzeć do dowolnej witryny. Nie ma możliwości włączenia lub wyłączenia HTTP / 2 dla określonych domen lub stron internetowych; jest to ustawienie dla całego serwera.

Wyłączanie HTTP / 2 na CentOS / RHEL

Wykonać: /usr/local/psa/bin/http2_pref disable

Wyłączanie HTTP / 2 w Ubuntu / Debian

Wykonać: /opt/psa/bin/http2_pref disable

Rozwiązywanie problemów

Biorąc pod uwagę wiele składników serwera zaangażowanych w włączenie HTTP / 2, w niektórych przypadkach może być konieczne rozwiązanie problemu, gdy strony internetowe nie ładują się poprawnie lub wcale nie są aktywne po aktywacji obsługi HTTP / 2.

Uwaga: pamiętaj, aby nie wyłączać obsługi protokołu HTTP / 2 za pomocą tego http2_prefnarzędzia podczas wykonywania tych kroków.

Sprawdź wymagania

Po pierwsze, upewnij się, że spełniasz wymagania przedstawione na początku tego artykułu.

Odtwórz konfigurację Nginx

Jeśli spełniasz wymagania dla HTTP / 2, możesz spróbować odtworzyć pliki konfiguracyjne Nginx. Powinieneś wiedzieć, że usunie to wszelkie niestandardowe konfiguracje, więc wcześniej utwórz kopię zapasową katalogu konfiguracji Nginx. Ponieważ pliki konfiguracyjne można rozpowszechniać na serwerze, lepiej po prostu zrobić migawkę lub wykonać kopię zapasową. Następnie wykonaj polecenie:

/usr/local/psa/admin/bin/httpdmng --reconfigure-all

Sprawdź ponownie zestaw szyfrów

Jeśli to też nie ma żadnego efektu, najprawdopodobniej winny jest zestaw szyfrów. Ponownie wykonaj następujące polecenie:

plesk sbin sslmng --services=nginx --custom --ciphers="EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20" --protocols="TLSv1 TLSv1.1 TLSv1.2"

Bład w panel.ini

Upewnij się, że plik /usr/local/psa/admin/conf/panel.inizawiera następującą treść:

[webserver]
nginxHttp2 = true

Możesz sprawdzić, czy plik zawiera to szybko, wykonując: cat /usr/local/psa/admin/conf/panel.ini | grep nginxHttp2

Czy to polecenie nic nie zwraca? Najprawdopodobniej plik jest tylko do odczytu, na przykład z powodu chattratrybutu. Mogło zostać dodane podczas wykonywania http2_prefpolecenia (w celu włączenia HTTP / 2).

Sprawdź, czy używany jest protokół SSL

Gdy witryna nie korzysta z protokołu SSL, nastąpi powrót do HTTP / 1.1. Tylko strony internetowe korzystające z SSL będą obsługiwane przy użyciu HTTP / 2. Upewnij się, że nie wymuszasz HTTP / 2 lokalnie we wszystkich przypadkach, ponieważ to nie zadziała i nie będzie to problemem po stronie serwera.

Inne opcje

Jeśli to też nie zadziała, powinieneś skonsultować się z ekspertem Plesk, na przykład na forach Plesk. W wielu przypadkach powyższe kroki naprawią większość problemów.

Ostatnim środkiem, jaki możesz podjąć, jest po prostu ponowne uruchomienie serwera. W niektórych dziwnych przypadkach rozwiązało to problemy z zaskoczenia. Jednak zawsze powinieneś być w stanie wskazać problemy, aby zapobiec ich (nagle) ponownemu wystąpieniu.

To kończy mój przewodnik, dziękuję za przeczytanie.



Leave a Comment

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.