Co jest potrzebne, aby uzyskać ocenę bezpieczeństwa Nextcloud A+

Twoja witryna Nextcloud może działać normalnie, ale mimo to otrzymać słabą ocenę w zewnętrznym skanowaniu bezpieczeństwa. Typowe przyczyny to przestarzała lub wycofana z eksploatacji wersja serwera, brak nagłówka HSTS lub odwrotny serwer proxy, który ukrywa protokół HTTPS przed Nextcloud. Zacznij od aktualizacji Nextcloud, wymuś protokół HTTPS na publicznej krawędzi serwera WWW, skonfiguruj wąskie zaufanie do serwera proxy i usuń ostrzeżenia zgłaszane przez stronę administracyjną Nextcloud.

Nie ma jednego, uniwersalnego standardu „A+”. Oficjalne skanowanie bezpieczeństwa Nextcloud ocenia publicznie widoczny serwer Nextcloud, stosując znane ostrzeżenia i kontrole bezpieczeństwa, które może przeprowadzić z zewnątrz; SSL Labs ocenia konfigurację TLS. Każdą ocenę należy traktować jako wynik z określonego punktu w czasie, a nie jako dowód bezpieczeństwa serwera ani gwarancję ochrony przed nieznanymi lukami w zabezpieczeniach.

1. Zidentyfikuj skaner i zaktualizuj serwer

Przed zmianą ustawień zapisz, który skaner wygenerował ocenę. Oficjalne skanowanie Nextcloud zgłasza znane luki w zabezpieczeniach, wersje wycofane z eksploatacji i widoczne problemy z zabezpieczeniami. Ocena wyłącznie dla protokołu TLS może pochodzić od SSL Labs. Napraw ostrzeżenia z używanego skanera, a następnie ponownie uruchom to samo skanowanie; różne usługi stosują różne kryteria.

W ustawieniach administracji Nextcloud sprawdź wersję serwera oraz wszelkie ostrzeżenia dotyczące bezpieczeństwa lub konfiguracji. Zaktualizuj do obsługiwanej wersji Nextcloud i zainstaluj aktualne aktualizacje zabezpieczeń przed dostosowaniem nagłówków. Stara wersja może pozostać podatna na ataki, nawet jeśli skaner nagłówków zwróci ocenę A+. Jeśli aktualizacja nie jest dostępna dla Twojego pakietu instalacyjnego, skorzystaj z obsługiwanej ścieżki aktualizacji dla tego pakietu, zamiast ręcznie zastępować pliki.

2. Wymagaj protokołu HTTPS i dodaj HSTS

Obsługuj publiczny adres URL Nextcloud przez HTTPS z ważnym certyfikatem i przekieruj niezaszyfrowany ruch HTTP do HTTPS. Przewodnik Nextcloud dotyczący wzmacniania zabezpieczeń zaleca HTTPS na serwerach produkcyjnych. Następnie dodaj protokół HTTP Strict Transport Security (HSTS) na serwerze lub serwerze proxy, który wysyła publiczną odpowiedź HTTPS. Ostrzeżenie administratora Nextcloud wymaga, aby Strict-Transport-Securitymaksymalny wiek wynosił co najmniej 15 552 000 sekund.

W przypadku Nginx dodaj dyrektywę taką jak ta do bloku aktywnego serwera TLS, zastępując nazwę hosta i zachowując resztę znanej, dobrej konfiguracji Nextcloud:

add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;
Blok serwera Nginx TLS pokazujący nagłówek HSTS z maksymalnym wiekiem 15 552 000 sekund i opcją includeSubDomains.
Ustaw HSTS na bloku serwera HTTPS, który wysyła odpowiedzi do publicznych użytkowników.

Używaj includeSubDomainstylko wtedy, gdy każda subdomena jest również dostępna przez HTTPS. Nie dodawaj opcjonalnej preloadflagi pochopnie: listy preloadu przeglądarki mogą wymagać miesięcy, aby usunąć domenę po przesłaniu. Jeśli odwrotny serwer proxy obsługuje TLS, skonfiguruj HSTS na tym publicznym serwerze proxy; ustawienie go tylko na wewnętrznym hoście Nextcloud może nie zmienić nagłówka widzianego przez skaner.

Nextcloud wysyła już podstawowe nagłówki, takie jak X-Content-Type-Options, X-Frame-Options, Referrer-Policyi X-Robots-Tagw środowisku domyślnym. Unikaj dodawania zduplikowanych lub sprzecznych wersji przed sprawdzeniem odpowiedzi. Przykładowa konfiguracja Nginx w Nextcloud pokazuje, jak obsługiwać te nagłówki z Nginx.

3. Skonfiguruj odwrotny serwer proxy bez ufania każdemu klientowi

Jeśli serwer proxy odwrotny znajduje się przed Nextcloud, w polu . należy podać tylko rzeczywisty adres IP lub zakres sieci prywatnej tego serwera proxy trusted_proxies. Nextcloud używa przekierowanych nagłówków IP klienta tylko w przypadku zaufanych serwerów proxy; zaufanie niewłaściwym adresom może pozwolić klientom na podszywanie się pod ich pozorny adres IP i osłabianie kontroli dostępu lub logów.

Na przykład, jeśli serwer proxy kończący TLS znajduje się w 10.0.0.10, scal odpowiednie wpisy z istniejącą $CONFIGtablicą w config/config.php:

'trusted_proxies' => ['10.0.0.10'],
'overwriteprotocol' => 'https',
Fragment kodu pokazujący ustawienie trusted_proxies na 10.0.0.10 i overwriteprotocol na https.
To tylko przykładowe wpisy. Użyj prawdziwego adresu IP serwera proxy i scal je z istniejącą tablicą konfiguracji Nextcloud.

Ustaw overwriteprotocolna, httpsgdy TLS kończy się na serwerze proxy, a w przeciwnym razie NextCloud wykrywa wewnętrzne połączenie HTTP jako publiczne HTTP. Jeśli serwer proxy używa niestandardowego nagłówka IP z przekierowaniem, skonfiguruj forwarded_for_headersgo dokładnie tak, aby był zgodny z nim. Nie ustawiaj szerokiego zakresu zaufanych adresów, takiego jak 0.0.0.0/0. Po edycji pliku sprawdź scaloną konfigurację i przetestuj logowanie, udostępnianie i wygenerowane linki.

4. Wyczyść pozostałe ostrzeżenia Nextcloud

Otwórz ustawienia administracyjne i przejrzyj ostrzeżenia w sekcji Przegląd lub Bezpieczeństwo i konfiguracja. Zajmij się wyświetlonym ostrzeżeniem, zamiast stosować niezwiązane z nim dyrektywy wzmacniające, aby uzyskać ocenę literową.

  • Brak HSTS: sprawdź odpowiedź z publicznego punktu końcowego HTTPS, zwłaszcza gdy serwer proxy lub moduł równoważenia obciążenia kończy protokół TLS.
  • Wygląda na to, że serwer używa protokołu HTTP: sprawdź, czy protokół HTTPS jest skonfigurowany na granicy i, w razie potrzeby, skonfigurowany overwriteprotocoljako zaufany serwer proxy.
  • Włączony tryb debugowania: opcja ta powinna pozostać debugwyłączona w środowisku produkcyjnym; należy ją włączyć tylko w celu rozwiązywania konkretnych problemów, a następnie ponownie wyłączyć.
  • Ostrzeżenie dotyczące serwera proxy lub adresu IP klienta: przed zmianą ustawień zaufanego serwera proxy należy sprawdzić rzeczywisty adres źródłowy i przekazywany nagłówek.
  • Znana podatna na ataki lub wycofana z użytku wersja: zaktualizuj Nextcloud i pakiety serwerów, których dotyczy problem, za pomocą obsługiwanego procesu aktualizacji.

Ograniczaj działania administratorów tylko allowed_admin_rangeswtedy, gdy administratorzy mają stabilne, znane zakresy adresów IP do zarządzania. Błędny zakres może uniemożliwić dostęp do funkcji administracyjnych uprawnionym administratorom. Poradnik Nextcloud dotyczący wzmacniania zabezpieczeń zaleca również wyłączenie kompresji HTTP w celu ograniczenia ryzyka naruszenia bezpieczeństwa. Sprawdź konfigurację serwera WWW lub serwera proxy, jeśli kompresja jest włączona dla stron uwierzytelnianych.

5. Sprawdź odpowiedź publiczną i ponownie uruchom skanowanie

Sprawdź, co faktycznie otrzymuje zewnętrzny klient, a nie tylko to, co zawiera plik konfiguracyjny:

curl -I https://cloud.example.com

Sprawdź, czy odpowiedź zawiera nagłówek HSTS z zamierzonym maksymalnym wiekiem (max-age) oraz czy podstawowe nagłówki zabezpieczeń Nextcloud są obecne. Narzędzia programistyczne przeglądarki mogą wyświetlać te same nagłówki odpowiedzi. Jeśli wartości różnią się od Twojej konfiguracji, sprawdź terminator TLS, serwer proxy oraz wszelkie buforowane lub zagnieżdżone lokalizacje Nginx.

Przykład terminalny polecenia curl -I wyświetlającego nagłówki odpowiedzi HSTS, X-Content-Type-Options i X-Frame-Options.
Sprawdź nagłówki zwrócone przez publiczny adres URL HTTPS. Sam wiersz konfiguracji nie potwierdza tego, co otrzymują odwiedzający.

Następnie uruchom oficjalne skanowanie bezpieczeństwa Nextcloud pod kątem publicznej nazwy hosta i ponownie sprawdź ustawienia administracyjne. Skorzystaj z Qualys SSL Labs, jeśli potrzebujesz osobnej oceny i szczegółów TLS. Oficjalne skanowanie wymaga dostępnej nazwy hosta Nextcloud; nie może ono ocenić instancji tylko prywatnej z publicznego internetu.

Oficjalna strona Nextcloud Security Scan z polem nazwy hosta i przyciskiem Skanuj przed wyświetleniem wyników.
Po wprowadzeniu zmian uruchom oficjalne skanowanie publicznej nazwy hosta. Jego ocena to migawka, a nie gwarancja bezpieczeństwa.

Jeśli ocena pozostaje poniżej A+, użyj konkretnego wyniku, aby zidentyfikować warstwę odpowiedzialną za problem. Rozwiązuj problemy po kolei, sprawdź, czy NextCloud nadal działa przez publiczny adres URL i ponownie przeskanuj. Ocena A+ to przydatny sygnał konfiguracyjny, ale po zakończeniu skanowania konieczne jest stosowanie poprawek, tworzenie kopii zapasowych, kontrola dostępu i stałe monitorowanie.

Oficjalna dokumentacja

Zostaw komentarz

Uruchom automatycznie Nextcloud Cron za pomocą timera Systemd

Sprawdź tryb cron Nextcloud, napraw usługę systemd i timer oraz zweryfikuj, czy zadania w tle są uruchamiane po uruchomieniu i co pięć minut.

Usuń ostrzeżenie o blokowaniu plików w NextCloud za pomocą Redis

Włącz niezawodne blokowanie plików Nextcloud, wybierz odpowiedni serwer Redis lub Valkey i sprawdź, czy ostrzeżenie zostanie usunięte bez ryzyka równoczesnych zmian w plikach.

Co jest potrzebne, aby uzyskać ocenę bezpieczeństwa Nextcloud A+

Co jest potrzebne, aby uzyskać ocenę bezpieczeństwa Nextcloud A+

Napraw typowe błędy skanowania Nextcloud dzięki bieżącym aktualizacjom, protokołom HTTPS i HSTS, precyzyjnemu zaufaniu do odwrotnego serwera proxy i sprawdzeniu względem serwera publicznego.

Włącz szyfrowanie po stronie serwera Nextcloud z mierzalnym wpływem

Skonfiguruj Nextcloud SSE dla pamięci masowej, która tego wymaga, chroń klucze szyfrujące i zmierz wpływ transferu i procesora przed zaszyfrowaniem istniejących plików.

Dodaj wyszukiwanie pełnotekstowe Elasticsearch do NextCloud

Połącz wyszukiwarkę plików Nextcloud z Elasticsearch, zindeksuj zawartość dokumentów i wybierz konfigurację odpowiadającą Twoim potrzebom w zakresie serwera i bezpieczeństwa.

Ustaw niezawodną politykę wygasania dla usuniętych plików w usłudze NextCloud

Ustaw niezawodną politykę wygasania dla usuniętych plików w usłudze NextCloud

Skonfiguruj Nextcloud tak, aby usuwał usunięte pliki po upływie określonego czasu przechowywania, niezawodnie planował zadania w tle i unikał poleceń, które usuwają śmieci każdego użytkownika.

Ostrzeżenie o braku indeksów bazy danych NextCloud

Ostrzeżenie o braku indeksów bazy danych NextCloud

Wykonaj bezpieczną naprawę OCC w Nextcloud, przejrzyj zmiany w bazie danych i sprawdź, dlaczego ostrzeżenie może nadal się pojawiać.

Zwiększ limit przesyłania danych do sieci w NextCloud powyżej 2 GB

Zwiększ limit przesyłania danych do sieci w NextCloud powyżej 2 GB

Zezwól na przesyłanie większych plików przez przeglądarkę Nextcloud, dostosowując ustawienia PHP, Nginx lub Apache, tymczasowego miejsca przechowywania i limitu czasu — i sprawdź, który limit blokuje plik.

Wyczyść ostrzeżenie Nextcloud dotyczące pamięci PHP na serwerze WWW

Ustaw limit pamięci PHP, z którego faktycznie korzysta Nextcloud, uruchom ponownie odpowiednią usługę i potwierdź ustawienie 512 MB w przeglądzie administratora.

Podłącz kontener zgodny z S3 do zewnętrznej pamięci masowej NextCloud

Zamontuj zgodny obiekt pamięci masowej w Nextcloud, korzystając z zaplecza S3, z odpowiednim punktem końcowym, poświadczeniami, zakresem dostępu i krokami weryfikacji.