Dodaj nagłówek HSTS w punkcie końcowym HTTPS obsługującym Nextcloud

Ostrzeżenie „Strict-Transport-Security” w NextCloud oznacza, że ​​kontrola nie wykryła nagłówka HSTS z opóźnieniem max-ageco najmniej 15552000kilku sekund (180 dni) w publicznej odpowiedzi HTTPS. Dodaj nagłówek na serwerze WWW lub odwrotnym serwerze proxy obsługującym HTTPS, a następnie przetestuj ten konkretny publiczny adres URL. HSTS nie jest ustawieniem w NextCloud config.php, a zwykła odpowiedź HTTP nie może ustanowić zasad HSTS w przeglądarkach.

Co sprawdzić przed zmianą konfiguracji

  • Sprawdź, czy witryna Nextcloud ładuje się prawidłowo przez protokół HTTPS i prezentuje prawidłowy certyfikat dla swojej nazwy hosta.
  • Określ, która usługa kończy protokół TLS: Apache, NGINX, moduł równoważenia obciążenia, ruch przychodzący do kontenera czy zewnętrzny serwer proxy.
  • Sprawdź, czy usługa już to ustawiła Strict-Transport-Security. Wyślij jedną celową politykę z publicznego punktu końcowego TLS; zduplikowane lub sprzeczne nagłówki utrudniają weryfikację.
  • Przed dodaniem zdecyduj, czy wszystkie subdomeny są gotowe na HTTPS includeSubDomains. Nie włączaj preloadtej opcji, aby szybko usunąć to ostrzeżenie.

HSTS informuje przeglądarki, że przyszłe połączenia z nazwą hosta muszą korzystać z protokołu HTTPS. Pomaga to zapobiec przejściu na protokół HTTP po otrzymaniu polityki przez przeglądarkę. Nie zastępuje protokołu TLS, nie naprawia nieprawidłowego certyfikatu ani nie przekierowuje pierwszej wizyty HTTP; należy również skonfigurować osobne przekierowanie HTTP-HTTPS. Podręcznik administratora NextCloud 35 określa minimalny czas 15552000 sekund i zaleca ustawienie nagłówka na serwerze WWW. Rzeczywistym punktem egzekwowania we wdrożeniu serwera proxy jest komponent zwracający odpowiedź użytkownikowi odwiedzającemu.

Ustaw politykę bazową

Konserwatywna polityka początkowa dla nazwy hosta Nextcloud jest następująca:

Strict-Transport-Security: max-age=15552000

Spełnia to minimalny okres ważności dokumentów Nextcloud bez automatycznego stosowania polityki do każdej subdomeny. Po potwierdzeniu, że wszystkie odpowiednie subdomeny nieprzerwanie obsługują protokół HTTPS, można rozważyć dodanie ; includeSubDomains. Przeglądarka, która zaadaptowała tę dyrektywę, będzie wymagać protokołu HTTPS również dla tych subdomen. Wewnętrzny panel sterowania, host poczty e-mail lub starsza usługa, która nadal korzysta z protokołu HTTP, może stać się niedostępna w tej przeglądarce do momentu migracji lub wygaśnięcia polityki.

Apache

W przypadku wirtualnego hosta Apache TLS włącz mod_headersi umieść dyrektywę wewnątrz wirtualnego hosta HTTPS, a nie tylko w hoście przekierowania portu 80:

<VirtualHost *:443>
    ServerName cloud.example.com
    # Keep the existing TLS and Nextcloud configuration here.
    <IfModule mod_headers.c>
        Header always set Strict-Transport-Security "max-age=15552000"
    </IfModule>
</VirtualHost>

Zastąp przykładową nazwę hosta i zachowaj istniejący certyfikat oraz konfigurację serwera proxy lub PHP. Przykładowe wzmocnienie serwera Apache firmy Nextcloud wykorzystuje Header always setwirtualny host HTTPS. Sprawdź poprawność konfiguracji serwera Apache za pomocą polecenia config-test obsługiwanego przez dystrybucję, a następnie przeładuj serwer Apache tylko wtedy, gdy test zakończy się pomyślnie.

NGINX

W NGINX dodaj nagłówek wewnątrz serverbloku, który nasłuchuje protokołu HTTPS na publicznej nazwie hosta Nextcloud:

server {
    listen 443 ssl;
    server_name cloud.example.com;
    # Keep your existing TLS and Nextcloud locations here.
    add_header Strict-Transport-Security "max-age=15552000" always;
}

Nie wklejaj tego jako całkowitego zamiennika istniejącej konfiguracji serwera. Dziedziczenie nagłówków NGINX może zależeć od tego, czy zagnieżdżona lokalizacja definiuje własne add_headerdyrektywy; sprawdź obowiązującą konfigurację i przetestuj reprezentatywne odpowiedzi, w tym zasoby statyczne i punkty końcowe DAV. Oficjalny przykład Nextcloud NGINX zawiera ustawienie HSTS w konfiguracji HTTPS i ostrzega administratorów przed włączeniem wstępnego ładowania.

Odwrotny serwer proxy lub wejście

Jeśli moduł równoważenia obciążenia, serwer przychodzący lub hostowany serwer proxy zakończy protokół HTTPS przed przekierowaniem ruchu do Nextcloud, należy ustawić HSTS na tej publicznej warstwie TLS, chyba że architektura celowo dodaje go na zaufanym serwerze upstream. Nagłówek dodany tylko przez serwer backend może zostać usunięty lub zastąpiony przez serwer proxy. Z drugiej strony, ustawienie go na obu warstwach może generować duplikaty wartości. Sprawdź konfigurację nagłówka odpowiedzi serwera proxy i upewnij się, że jego trasa HTTPS jest testowana. Zachowaj spójność ustawień zaufanego serwera proxy i adresu URL HTTPS w Nextcloud z istniejącym wdrożeniem, ale nie traktuj tych ustawień jako substytutu emisji nagłówka.

Zweryfikuj odpowiedź publiczną

  1. Użyj narzędzia sprawdzającego składnię platformy w celu uwzględnienia zmienionej konfiguracji serwera WWW lub serwera proxy.
  2. Załaduj ponownie lub wdróż sprawdzoną konfigurację.
  3. Poproś o publiczny adres HTTPS i sprawdź nagłówki odpowiedzi: curl -sSI https://cloud.example.com/. Poszukaj Strict-Transport-Securitywiersza, którego max-agedługość wynosi co najmniej 15552000.
  4. W narzędziach programistycznych przeglądarki sprawdź odpowiedź z tej samej publicznej nazwy hosta. Może to ujawnić serwer proxy, który zmienia nagłówki, lub trasę omijającą oczekiwany host wirtualny.
  5. Odśwież stronę Administracja → Przegląd serwisu Nextcloud i zezwól na odświeżenie kontroli bezpieczeństwa.

Jeśli curlnie widać nagłówka HSTS, sprawdź, czy DNS wskazuje na edytowany punkt końcowy, czy żądanie korzysta z protokołu HTTPS i czy serwer proxy nie usuwa nagłówka. Jeśli nagłówek pojawia się na stronie głównej, ale nie w innych odpowiedziach, sprawdź dyrektywy na poziomie lokalizacji NGINX lub reguły nagłówka odpowiedzi serwera proxy. Jeśli odpowiedź publiczna jest poprawna, ale Nextcloud nadal wyświetla ostrzeżenie, sprawdź, czy weryfikacja administracyjna używa tej samej widocznej zewnętrznie nazwy hosta i schematu, a następnie sprawdź warstwę buforowania lub proxy między serwerem a weryfikacją.

Użyj wstępnego ładowania dopiero po przeprowadzeniu przeglądu całej domeny

Preload to osobna, bardzo istotna opcja. Dyrektywa preload sama w sobie nie rejestruje domeny; listy preloadu przeglądarek mają własne wymagania dotyczące przesyłania. Aktualne wytyczne dotyczące przeglądarek wymagają długiego max-ageprocesu includeSubDomainsrejestracji. Nextcloud ostrzega, że ​​usunięcie z wysłanej listy preloadu może potrwać miesiące, zanim dotrze ona do zainstalowanych przeglądarek. Zacznij od polityki bazowej, zinwentaryzuj każdą nazwę hosta, której dotyczy problem, upewnij się, że protokół HTTPS działa w całej domenie i zapoznaj się z oficjalnymi wymaganiami preloadu przed jego zastosowaniem. Większość administratorów Nextcloud może rozwiązać ten problem bez włączania preloadu.

Odniesienie: ostrzeżenia dotyczące bezpieczeństwa Nextcloud 35 , wskazówki dotyczące wzmacniania zabezpieczeń Nextcloud , konfiguracja Nextcloud NGINX i odniesienie do nagłówka HSTS MDN .

Zostaw komentarz

Przenieś dane z Nextcloud na dysk zewnętrzny bez naruszania pamięci masowej

Przenieś dane z Nextcloud na dysk zewnętrzny bez naruszania pamięci masowej

Bezpiecznie przenieś katalog danych Linux Nextcloud na dysk zewnętrzny, korzystając z trwałego montowania UUID, trybu konserwacji, zweryfikowanej kopii i dowiązania symbolicznego do ścieżki oryginalnej.

Błąd bazy danych NextCloud po aktualizacji: co sprawdzić w pierwszej kolejności

Przywróć dostęp do Nextcloud po aktualizacji, diagnozując błędy SQL, sprawdzając łączność z bazą danych i bezpiecznie kończąc przerwane migracje.

Zresetuj utracone hasło administratora NextCloud za pomocą OCC

Użyj polecenia OCC usługi Nextcloud, aby zresetować hasło administratora z poziomu powłoki serwera. Znajdziesz tam wskazówki dotyczące nazw użytkowników, uprawnień i zewnętrznych dostawców logowania.

Dodaj nagłówek HSTS w punkcie końcowym HTTPS obsługującym Nextcloud

Wyczyść ostrzeżenie HSTS usługi Nextcloud, ustawiając nagłówek na serwerze Apache, NGINX lub serwerze proxy TLS, a następnie bezpiecznie zweryfikuj publiczną odpowiedź HTTPS.

Rozwiązywanie problemów z instalacjami aplikacji NextCloud, które zgłaszają brak połączenia z Internetem

Rozwiązywanie problemów z instalacjami aplikacji NextCloud, które zgłaszają brak połączenia z Internetem

Śledź błędy instalacji App Store, aby wykryć problemy z DNS, HTTPS, serwerem proxy, TLS lub konfiguracją na samym serwerze Nextcloud.

Podgląd Tame Nextcloud powoduje skoki obciążenia procesora w przypadku zaplanowanej kolejki

Przenieś pracę nad miniaturami do kontrolowanego harmonogramu w tle, zmniejsz nieużywane rozmiary podglądu i zweryfikuj kolejkę bez przeciążania serwera Nextcloud.

Uzyskaj synchronizację pulpitu Nextcloud, wykraczającą poza „przetwarzanie plików”

Znajdź plik, regułę wykluczenia, problem z połączeniem lub stan bazy danych klienta, który blokuje synchronizację z Nextcloud, a następnie sprawdź bezpieczeństwo przesyłania i pobierania.

Wyczyść ostrzeżenie Nextcloud OPcache, dostosowując prawy limit

Znajdź limit PHP OPcache powodujący ostrzeżenie Nextcloud, zaktualizuj prawidłową konfigurację PHP w przeglądarce, uruchom ponownie system bezpiecznie i sprawdź wynik.

Połączenie Nextcloud z CODE Docker: konfiguracja i kompromisy

Połączenie Nextcloud z CODE Docker: konfiguracja i kompromisy

Porównaj wbudowany KOD i KOD oparty na Dockerze, a następnie połącz Collabora Online z Nextcloud za pomocą bezpiecznego odwrotnego serwera proxy HTTPS.

Zbuduj odporny klaster Nextcloud z Galera

Zaplanuj niezawodne wdrożenie Nextcloud HA z współdzieloną pamięcią masową, blokowaniem Redis, routingiem MariaDB uwzględniającym kworum i praktycznymi kontrolami awaryjnymi.