Wat er nodig is om een ​​A+ beveiligingsrating voor Nextcloud te behalen

Je Nextcloud-site kan normaal functioneren en toch een onvoldoende score krijgen bij een externe beveiligingsscan. Veelvoorkomende oorzaken zijn een verouderde of niet langer ondersteunde serverversie, het ontbreken van een HSTS-header of een reverse proxy die HTTPS voor Nextcloud verbergt. Begin met het bijwerken van Nextcloud, dwing HTTPS af aan de rand van de openbare webserver, configureer de proxyvertrouwensinstellingen nauwkeurig en verwijder de waarschuwingen die worden weergegeven op de beheerderspagina van Nextcloud zelf.

Er bestaat geen universele "A+"-standaard. De officiële beveiligingsscan van Nextcloud beoordeelt een publiekelijk toegankelijke Nextcloud-server aan de hand van bekende beveiligingsadviezen en controles die van buitenaf kunnen worden uitgevoerd; SSL Labs beoordeelt de TLS-configuratie. Beschouw elke beoordeling als een momentopname, niet als bewijs dat de server veilig is of als een garantie tegen onbekende kwetsbaarheden.

1. Identificeer de scanner en update de server.

Noteer welke scanner de beoordeling heeft gegenereerd voordat u de instellingen wijzigt. De officiële scan van Nextcloud rapporteert bekende kwetsbaarheden, verouderde versies en zichtbare beveiligingsproblemen. Een beoordeling die alleen betrekking heeft op TLS kan afkomstig zijn van SSL Labs. Los de waarschuwingen van de scanner die u gebruikt op en voer dezelfde scan opnieuw uit; verschillende services gebruiken namelijk verschillende criteria.

Controleer in de Nextcloud-beheerinstellingen de serverversie en eventuele beveiligings- of installatiewaarschuwingen. Upgrade naar een ondersteunde Nextcloud-versie en installeer de meest recente beveiligingsupdates voordat u de headers aanpast. Een oude versie kan kwetsbaar blijven, zelfs als een headerscanner een A+-status aangeeft. Als er geen upgrade beschikbaar is voor uw installatiepakket, volg dan het ondersteunde upgradepad van dat pakket in plaats van bestanden handmatig te vervangen.

2. Vereis HTTPS en voeg HSTS toe

Zorg ervoor dat de openbare Nextcloud-URL via HTTPS beschikbaar is met een geldig certificaat en leid onversleuteld HTTP-verkeer om naar HTTPS. De beveiligingsrichtlijnen van Nextcloud bevelen HTTPS aan op productieservers. Voeg vervolgens HTTP Strict Transport Security (HSTS) toe aan de server of proxy die het openbare HTTPS-antwoord verzendt. De beheerderswaarschuwing van Nextcloud adviseert een Strict-Transport-Securitymax-age van minimaal 15.552.000 seconden.

Voeg voor Nginx een instructie zoals deze toe aan het actieve TLS-serverblok, waarbij u de hostnaam vervangt en de rest van uw bekende, correcte Nextcloud-configuratie behoudt:

add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;
Een Nginx TLS-serverblok met een HSTS-header met een max-age van 15.552.000 seconden en de optie includeSubDomains.
Stel HSTS in op het HTTPS-serverblok dat reacties naar openbare bezoekers verzendt.

Gebruik dit includeSubDomainsalleen als elk subdomein ook via HTTPS beschikbaar is. Voeg de optionele preloadvlag niet zomaar toe: het kan maanden duren voordat een domein uit de preload-lijsten van browsers wordt verwijderd na indiening. Als een reverse proxy TLS afhandelt, configureer dan HSTS op die publiekelijk toegankelijke proxy; het instellen ervan alleen op een interne Nextcloud-host verandert mogelijk niet de header die de scanner ziet.

Nextcloud verstuurt standaard al basisheaders zoals X-Content-Type-Options, X-Frame-Options, Referrer-Policyen X-Robots-Tagin een standaardomgeving. Voeg geen dubbele of conflicterende versies toe voordat u het antwoord controleert. De voorbeeldconfiguratie van Nextcloud voor Nginx laat zien hoe u deze headers via Nginx kunt versturen.

3. Configureer een reverse proxy zonder elke client te vertrouwen.

Als er een reverse proxy voor Nextcloud staat, vermeld dan alleen het daadwerkelijke IP-adres of het privénetwerkbereik van die proxy onder trusted_proxies. Nextcloud gebruikt doorgestuurde client-IP-headers alleen voor vertrouwde proxies; het vertrouwen op onjuiste adressen kan ertoe leiden dat clients hun schijnbare IP-adres vervalsen en toegangscontroles of logboeken omzeilen.

Als de TLS-terminerende proxy zich bijvoorbeeld op bevindt 10.0.0.10, voeg dan de relevante vermeldingen samen in de bestaande $CONFIGarray in config/config.php:

'trusted_proxies' => ['10.0.0.10'],
'overwriteprotocol' => 'https',
Een codefragment waarin trusted_proxies is ingesteld op 10.0.0.10 en overwriteprotocol op https.
Dit zijn slechts voorbeeldvermeldingen. Gebruik het echte proxy-IP-adres en voeg deze samen met de bestaande Nextcloud-configuratie.

Stel overwriteprotocoldit in op httpshet moment dat TLS eindigt bij de proxy en Nextcloud de interne HTTP-verbinding anders detecteert als openbare HTTP. Als uw proxy een niet-standaard forwarded-IP-header gebruikt, configureer deze dan forwarded_for_headerszodat deze exact overeenkomt. Stel geen breed vertrouwd bereik in, zoals 0.0.0.0/0. Controleer na het bewerken van het bestand de samengevoegde configuratie en test het aanmelden, delen en de gegenereerde links.

4. Wis de resterende Nextcloud-waarschuwingen.

Open de beheerdersinstellingen en bekijk het overzicht of de beveiligings- en installatiewaarschuwingen. Los de weergegeven waarschuwing op in plaats van irrelevante beveiligingsmaatregelen toe te passen om een ​​hogere score te behalen.

  • HSTS ontbreekt: controleer het antwoord van het openbare HTTPS-eindpunt, vooral wanneer een proxy of load balancer de TLS-verbinding verbreekt.
  • De server lijkt HTTP te gebruiken: controleer of HTTPS aan de rand van het netwerk is geconfigureerd en, indien nodig, is ingesteld overwriteprotocolvoor de vertrouwde proxy-configuratie.
  • Debugmodus ingeschakeld: laat debugdeze in productie uitgeschakeld; schakel deze alleen in voor gerichte probleemoplossing en schakel hem daarna weer uit.
  • Proxy- of client-IP-waarschuwing: controleer het werkelijke bronadres van de proxy en de doorgestuurde header voordat u de instellingen voor vertrouwde proxy's wijzigt.
  • Bekende kwetsbare of niet langer ondersteunde versie: update Nextcloud en de betreffende serverpakketten via de ondersteunde upgradeprocedure.

Beperk beheerdersacties alleen allowed_admin_rangesals beheerders beschikken over stabiele, bekende IP-adressen voor beheer. Een onjuist IP-adresbereik kan beheerdersfuncties ontoegankelijk maken voor legitieme beheerders. De beveiligingshandleiding van Nextcloud raadt ook aan om HTTP-compressie uit te schakelen om BREACH te voorkomen; controleer de configuratie van uw webserver of proxy als compressie is ingeschakeld voor geauthenticeerde pagina's.

5. Controleer de reactie van het publiek en voer de scans opnieuw uit.

Controleer wat een externe client daadwerkelijk ontvangt, niet alleen wat het configuratiebestand bevat:

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

Controleer of het antwoord een HSTS-header bevat met de beoogde max-age en of de standaard Nextcloud-beveiligingsheaders aanwezig zijn. De ontwikkelaarstools van een browser kunnen dezelfde antwoordheaders weergeven. Als de waarden afwijken van uw configuratie, controleer dan de TLS-terminator, proxy en eventuele gecachede of geneste Nginx-locaties.

Een voorbeeld van de uitvoer van `curl -I` in de terminal, met een lijst van de response headers HSTS, X-Content-Type-Options en X-Frame-Options.
Controleer de headers die door de openbare HTTPS-URL worden teruggestuurd; een configuratieregel alleen geeft geen uitsluitsel over wat bezoekers ontvangen.

Voer vervolgens de officiële Nextcloud-beveiligingsscan uit op de openbare hostnaam en controleer daarna de beheerdersinstellingen opnieuw. Gebruik Qualys SSL Labs als u een aparte TLS-score en details nodig hebt. De officiële scan vereist een bereikbare Nextcloud-hostnaam; deze kan een privé-instantie die via het openbare internet bereikbaar is, niet beoordelen.

De officiële Nextcloud-beveiligingsscanpagina met een veld voor de hostnaam en een knop 'Scannen', voordat de resultaten worden weergegeven.
Voer na uw wijzigingen de officiële scan uit op de openbare hostnaam; de score is een momentopname, geen veiligheidsgarantie.

Als de score onder A+ blijft, gebruik dan de specifieke bevinding om de verantwoordelijke laag te identificeren. Los één probleem tegelijk op, controleer of Nextcloud nog steeds werkt via de openbare URL en voer opnieuw een scan uit. A+ is een nuttig signaal voor de configuratie, maar patches, back-ups, toegangsbeheer en continue monitoring blijven noodzakelijk, ook nadat de scan is geslaagd.

Officiële documentatie

Laat een reactie achter

Wat er nodig is om een ​​A+ beveiligingsrating voor Nextcloud te behalen

Wat er nodig is om een ​​A+ beveiligingsrating voor Nextcloud te behalen

Los veelvoorkomende Nextcloud-scanbevindingen op met de nieuwste updates, HTTPS en HSTS, nauwkeurige reverse-proxy-vertrouwensinstellingen en controles op de openbare server.

Schakel Nextcloud-serverversleuteling in met meetbare impact.

Configureer Nextcloud SSE voor de opslag die het nodig heeft, bescherm de encryptiesleutels en meet de impact op de overdracht en het CPU-gebruik voordat u bestaande bestanden versleutelt.

Voeg Elasticsearch Full-Text Search toe aan Nextcloud

Koppel de bestandszoekfunctie van Nextcloud aan Elasticsearch, indexeer de inhoud van documenten en kies een configuratie die past bij uw server- en beveiligingsbehoeften.

Stel een betrouwbaar vervalbeleid in voor verwijderde bestanden in Nextcloud.

Stel een betrouwbaar vervalbeleid in voor verwijderde bestanden in Nextcloud.

Configureer Nextcloud om verwijderde bestanden na een bepaalde bewaartermijn te verwijderen, achtergrondtaken betrouwbaar in te plannen en opdrachten te vermijden die de prullenbak van elke gebruiker leegmaken.

Wis de Nextcloud-waarschuwing voor ontbrekende database-indexen.

Wis de Nextcloud-waarschuwing voor ontbrekende database-indexen.

Voer de OCC-reparatie van Nextcloud veilig uit, bekijk de wijzigingen in de database en controleer waarom de waarschuwing mogelijk blijft bestaan.

Verhoog de uploadlimiet van Nextcloud voor webbestanden tot boven de 2 GB.

Verhoog de uploadlimiet van Nextcloud voor webbestanden tot boven de 2 GB.

Sta grotere Nextcloud-browseruploads toe door PHP, Nginx of Apache, tijdelijke opslag en time-outinstellingen op elkaar af te stemmen en te controleren welke limiet het bestand blokkeert.

Wis de PHP-geheugenwaarschuwing van Nextcloud op de webserver.

Stel de PHP-geheugenlimiet in die Nextcloud daadwerkelijk gebruikt, herstart de juiste service en bevestig de instelling van 512 MB in het beheerdersoverzicht.

Verbind een S3-compatibele bucket met Nextcloud externe opslag.

Koppel een compatibele objectopslagbucket in Nextcloud met behulp van de S3-backend, met het juiste eindpunt, de juiste inloggegevens, het juiste toegangsbereik en de juiste verificatiestappen.

Verplaats Nextcloud-gegevens naar een externe schijf zonder de opslag te beschadigen.

Verplaats Nextcloud-gegevens naar een externe schijf zonder de opslag te beschadigen.

Verplaats een Nextcloud-gegevensmap op Linux veilig naar een externe schijf met behulp van een permanente UUID-mount, de onderhoudsmodus, een geverifieerde kopie en de symbolische link naar het oorspronkelijke pad.

Nextcloud-databasefout na een update: wat moet je eerst controleren?

Herstel de toegang tot Nextcloud na een update door SQL-fouten te diagnosticeren, de databaseverbinding te controleren en onderbroken migraties veilig af te ronden.