Ajoutez l'en-tête HSTS au point de terminaison HTTPS qui héberge Nextcloud.

L'avertissement « Strict-Transport-Security » de Nextcloud signifie que la vérification n'a pas détecté d'en-tête HSTS avec un délai max-aged'au moins 15552000180 jours (secondes) dans la réponse HTTPS publique. Ajoutez cet en-tête sur le serveur web ou le proxy inverse qui gère le HTTPS, puis testez cette URL publique. HSTS n'est pas une option de configuration de Nextcloud config.php, et une simple réponse HTTP ne permet pas d'établir une politique HSTS dans les navigateurs.

Que vérifier avant de modifier la configuration

  • Vérifiez que le site Nextcloud se charge correctement via HTTPS et présente un certificat valide pour son nom d'hôte.
  • Identifiez le service qui termine la connexion TLS : Apache, NGINX, un équilibreur de charge, un point d’entrée de conteneur ou un proxy externe.
  • Vérifiez si ce service est déjà configuré Strict-Transport-Security. Envoyez une seule politique explicite depuis le point de terminaison TLS public ; les en-têtes dupliqués ou contradictoires rendent la vérification difficile.
  • Avant d'ajouter des sous-domaines, assurez-vous qu'ils sont tous prêts pour HTTPS includeSubDomains. N'activez pas preloadcette option pour faire disparaître rapidement cet avertissement.

HSTS indique aux navigateurs que les futures connexions à un nom d'hôte doivent utiliser HTTPS. Cela empêche le passage à HTTP après la réception de cette politique par le navigateur. HSTS ne remplace pas TLS, ne corrige pas un certificat invalide et ne redirige pas la première visite HTTP ; il est donc nécessaire de configurer une redirection HTTP vers HTTPS distincte. Le manuel d'administration de Nextcloud 35 précise le délai minimal de 15 552 000 secondes et recommande de configurer l'en-tête sur le serveur web. Dans un déploiement de proxy, le point d'application effectif est le composant qui renvoie la réponse au visiteur.

Établir une politique de base

Une politique de départ prudente pour un nom d'hôte Nextcloud est :

Strict-Transport-Security: max-age=15552000

Cela permet de respecter la durée de vie minimale des documents Nextcloud sans appliquer automatiquement une politique à chaque sous-domaine. Une fois que vous avez confirmé que tous les sous-domaines concernés prennent en charge le protocole HTTPS en continu, vous pouvez envisager d'ajouter ; includeSubDomainscette directive. Un navigateur qui l'a intégrée exigera également le protocole HTTPS pour ces sous-domaines. Un tableau de bord interne, un serveur de messagerie ou un service existant qui dépend encore du protocole HTTP risque de devenir inaccessible dans ce navigateur jusqu'à sa migration ou l'expiration de la politique.

Apache

Pour un hôte virtuel Apache TLS, activez mod_headerset placez la directive à l'intérieur de l'hôte virtuel HTTPS, et non pas seulement dans l'hôte de redirection du port 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>

Remplacez le nom d'hôte d'exemple et conservez votre certificat et votre configuration de proxy ou PHP existants. L'exemple de renforcement de la sécurité d'Apache de Nextcloud utilise Header always setl'hôte virtuel HTTPS. Validez la configuration d'Apache avec la commande `config-test` prise en charge par votre distribution, puis rechargez Apache uniquement si le test réussit.

NGINX

Dans NGINX, ajoutez l'en-tête à l'intérieur du serverbloc qui écoute le protocole HTTPS sur le nom d'hôte public de 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;
}

Ne copiez pas ceci comme un remplacement complet de la configuration existante du serveur. L'héritage des en-têtes NGINX peut dépendre de la présence add_headerde directives propres à un emplacement imbriqué ; examinez la configuration effective et testez des réponses représentatives, incluant les ressources statiques et les points de terminaison DAV. L'exemple officiel NGINX de Nextcloud inclut un paramètre HSTS dans sa configuration HTTPS et met en garde les administrateurs contre l'activation du préchargement.

proxy inverse ou entrée

Si un équilibreur de charge, un serveur d'entrée ou un proxy hébergé termine le protocole HTTPS avant de transférer le trafic vers Nextcloud, configurez HSTS au niveau de cette couche TLS publique, sauf si votre architecture l'ajoute délibérément au niveau d'un serveur en amont de confiance. Un en-tête ajouté uniquement par le serveur d'arrière-plan peut être supprimé ou remplacé par le proxy. Inversement, le configurer aux deux niveaux peut générer des valeurs dupliquées. Vérifiez la configuration de l'en-tête de réponse du proxy et assurez-vous que c'est bien sa route HTTPS qui est testée. Veillez à ce que les paramètres de proxy de confiance et d'URL HTTPS de Nextcloud restent cohérents avec le déploiement existant, mais ne les considérez pas comme un substitut à l'émission de l'en-tête.

Valider la réponse du public

  1. Utilisez le vérificateur de syntaxe de la plateforme pour la configuration modifiée du serveur Web ou du proxy.
  2. Rechargez ou déployez la configuration validée.
  3. Demandez l'adresse HTTPS publique et examinez les en-têtes de réponse : curl -sSI https://cloud.example.com/. Recherchez une Strict-Transport-Securityligne dont max-agela valeur est au moins égale à 15552000.
  4. Dans les outils de développement de votre navigateur, examinez la réponse provenant du même nom d'hôte public. Cela peut révéler un proxy modifiant les en-têtes ou une route contournant l'hôte virtuel attendu.
  5. Rechargez la page Administration → Vue d'ensemble de Nextcloud et laissez la vérification de sécurité se rafraîchir.

Si curll'en-tête HSTS est absent, vérifiez que le DNS pointe bien vers le point de terminaison modifié, que la requête utilise HTTPS et que le proxy ne supprime pas l'en-tête. Si l'en-tête apparaît sur la page d'accueil mais pas dans les autres réponses, examinez les directives de localisation NGINX ou les règles d'en-tête de réponse du proxy. Si la réponse publique est correcte mais que Nextcloud émet toujours un avertissement, vérifiez que la vérification d'administration utilise le même nom d'hôte et le même schéma visibles de l'extérieur, puis inspectez toute couche de cache ou de proxy entre le serveur et la vérification.

N'utilisez le préchargement qu'après une vérification à l'échelle du domaine

Le préchargement est une option distincte et à fort impact. La directive de préchargement n'enregistre pas de domaine ; les listes de préchargement des navigateurs ont leurs propres exigences de soumission. Les recommandations actuelles des navigateurs exigent une procédure d'inscription longue max-age. includeSubDomainsNextcloud prévient que la suppression d'un domaine d'une liste de préchargement peut prendre plusieurs mois avant d'être prise en compte par les navigateurs installés. Commencez par la politique de base, recensez tous les noms d'hôtes concernés, vérifiez que le protocole HTTPS fonctionne correctement sur l'ensemble du domaine et consultez les exigences officielles de préchargement avant d'appliquer la modification. La plupart des administrateurs Nextcloud peuvent résoudre ce problème sans activer le préchargement.

Références : Avertissements de sécurité de Nextcloud 35 , conseils de renforcement de Nextcloud , configuration NGINX de Nextcloud et référence d’en-tête HSTS de MDN .

Laisser un commentaire

Erreur de base de données Nextcloud après une mise à jour : que vérifier en premier ?

Rétablissez l'accès à Nextcloud après une mise à jour en diagnostiquant les erreurs SQL, en vérifiant la connectivité de la base de données et en terminant en toute sécurité les migrations interrompues.

Réinitialisez un mot de passe d'administrateur Nextcloud perdu avec OCC

Utilisez la commande OCC de Nextcloud pour réinitialiser un mot de passe administrateur depuis l'interface de ligne de commande du serveur, avec des instructions concernant les noms d'utilisateur, les permissions et les fournisseurs d'authentification externes.

Ajoutez l'en-tête HSTS au point de terminaison HTTPS qui héberge Nextcloud.

Éliminez l'avertissement HSTS de Nextcloud en configurant l'en-tête au niveau d'Apache, de NGINX ou de votre proxy TLS, puis vérifiez la réponse HTTPS publique en toute sécurité.

Résolution des problèmes d'installation de l'application Nextcloud signalant une absence de connexion Internet

Résolution des problèmes d'installation de l'application Nextcloud signalant une absence de connexion Internet

Identifiez les échecs d'installation de l'App Store comme étant liés à des problèmes de DNS, HTTPS, de proxy, TLS ou de configuration du serveur Nextcloud lui-même.

Maîtrisez les pics d'utilisation du processeur lors de la prévisualisation de Nextcloud grâce à une file d'attente planifiée

Déplacez le traitement des vignettes vers une planification en arrière-plan contrôlée, réduisez les tailles d'aperçu inutilisées et vérifiez la file d'attente sans surcharger votre serveur Nextcloud.

Obtenez Nextcloud Desktop Sync : passez à l’étape suivante, celle du « traitement des fichiers ».

Trouvez le fichier, la règle d'exclusion, le problème de connexion ou l'état de la base de données client qui bloque la synchronisation Nextcloud, puis vérifiez les chargements et les téléchargements en toute sécurité.

Éliminez l'avertissement OPcache de Nextcloud en ajustant la limite appropriée

Identifiez la limite du cache PHP OPcache qui déclenche l'avertissement de Nextcloud, mettez à jour la configuration PHP web correspondante, redémarrez en toute sécurité et vérifiez le résultat.

Connecter Nextcloud à CODE Docker : Configuration et compromis

Connecter Nextcloud à CODE Docker : Configuration et compromis

Comparez le code intégré et celui basé sur Docker, puis connectez Collabora Online à Nextcloud via un proxy inverse HTTPS sécurisé.

Créez un cluster Nextcloud résilient avec Galera

Planifiez un déploiement Nextcloud HA fiable avec stockage partagé, verrouillage Redis, routage MariaDB prenant en compte le quorum et contrôles de basculement pratiques.

Réussir les appels Nextcloud Talk même en cas de défaillance de Direct Media

Réussir les appels Nextcloud Talk même en cas de défaillance de Direct Media

Configurez et vérifiez un relais TURN accessible pour Nextcloud Talk lorsque des pare-feu ou un NAT restrictif bloquent les flux multimédias d'appel direct.