Nextcloud - Avertissements de sécurité & configuration

Nextcloud - Avertissements de sécurité & configuration

Table des matières

Après avoir installé Nextcloud, il est tout à fait normal d'avoir des alertes de sécurité ou avertissements. Et cela peut même évoluer au fil des mises à jour. C'est parfois pénible de maintenir Nextcloud...

Cela ne veut pas dire que Nextcloud ne fonctionnera pas, mais il est conseillé de régler ces alertes pour avoir le fameux V vert.

Quand on a pas l'habitude cela peut-être déroutant. Cela se présente comme ceci:

Accès au site non sécurisé à travers le protocole HTTP. Vous êtes vivement encouragé à configurer votre serveur pour utiliser plutôt le protocole HTTPS, comme décrit dans les conseils de sécurité ↗. Sans ça, certaines fonctionnalités web importantes comme la "copie dans le presse-papier" ou les "serveurs intermédiaires" ne fonctionneront pas.
  • Nextcloud n'aime pas le HTTP, il préfère le HTTPS. Et à raison. Tout ce qui transite en HTTP passe en clair. Niveau sécurité on a vu mieux, surtout si vous exposez votre cloud sur internet. Pour cette raison il faut avoir un certificat SSL. D'une manière ou d'une autre. Je vous invite cordialement sur Discord si vous ne savez pas ce que c'est ni comment faire. Il existe plusieurs solutions comme le certificat auto signé (self-signed) ou encore un reverse proxy.

Vous n'avez pas encore défini ou vérifié la configuration de votre serveur de messagerie.

Vous n'avez pas encore défini ou vérifié la configuration de votre serveur de messagerie. Veuillez vous diriger vers les Paramètres de base afin de les définir. Ensuite, utilisez le bouton "Envoyer un e-mail" sous le formulaire pour vérifier vos paramètres.
  • Nextcloud n'aime pas qu'on ne configure par son serveur de messagerie... Je présume pour la récupération du mot de passe. Je ne sais pas trop. Avant ça ne valait pas une alerte. Maintenant oui. Bien que ce ne soit pas obligatoire au bon fonctionnement de Nextcloud, ça ne demande pas beaucoup d'efforts pour régler cette alerte.

Je vous invite sur cet article pour le tutoriel concernant l'ajout d'un mail Gmail, majoritairement utilisé.


Votre installation n’a pas de préfixe de région par défaut.

Votre installation n’a pas de préfixe de région par défaut. C’est nécessaire pour valider les numéros de téléphone dans les paramètres du profil sans code pays. Pour autoriser les numéros sans code pays, veuillez ajouter "default_phone_region" avec le code ISO 3166-1 respectif de la région dans votre fichier de configuration.
  • Nextcloud n'aime pas non plus quand ajoute pas son préfixe de région par défaut.

Votre installation n’a pas de préfixe de région par défaut.

Sans éditer le fichier config.php (recommandé car plus facile).

Tapez cette commande:

sudo docker exec --user www-data -it nextcloud php occ config:system:set default_phone_region --value=“BE”

Veillez à remplacer BE par le code de votre pays.

En éditant manuellement le fichier config.php:

  1. Se connecter en SSH au serveur hébergeant Nextcloud, ensuite il faut éditer le fichier config.php dans le dossier config qui se trouve lui-même dans le dossier Nextcloud:
sudo nano /srv/appdata/nextcloud/config/config.php
  1. Il faudra ajouter le code de votre pays que vous pouvez trouver ici si vous l'ignorez. Dans mon cas, la Belgique c'est BE:
'default_phone_region' => 'BE',

Vous pouvez ajouter cette ligne tout en bas du fichier config.php:

Une fois terminé, vous enregistrez le fichier et redémarrez Nextcloud:

docker restart nextcloud

well-known/caldav et well-know/cardav

Pour les erreurs:

Votre serveur web nest pas configuré correctement pour résoudre "/.well-known/caldav".
Votre serveur web nest pas configuré correctement pour résoudre "/.well-known/carddav".

Faites:

sudo nano /srv/appdata/nextcloud/html/.htaccess

Supprimez ces deux lignes:

RewriteRule ^.well-known/carddav /remote.php/dav/ [R=301,L]
RewriteRule ^.well-known/caldav /remote.php/dav/ [R=301,L]

Et remplacez-les par ces deux lignes en remplaçant https://votredomaine.com par l'url de votre instance Nextcloud:

RewriteRule ^.well-known/carddav https://votredomaine.com/remote.php/dav/ [R=301,L]
RewriteRule ^.well-known/caldav https://votredomaine.com/remote.php/dav/ [R=301,L]

Erreur reverse-proxy

Pour régler cette erreur:

Vous accédez à votre instance via une connexion sécurisée, pourtant celle-ci génère des URLs non sécurisées. Cela signifie probablement que vous êtes derrière un reverse-proxy et que les variables de réécriture ne sont pas paramétrées correctement.

Il suffira d'éditer:

sudo nano srv/appdata/nextcloud/config/config.php

Et d'ajouter à la fin de fichier:

'trusted_proxies' =>
   array (
    0 => 'ip_locale',
   ),
  'overwritehost'     => 'nextcloud.ndd.tld',
  'overwriteprotocol' => 'https',

Il faut donc changer ip_locale par l'ip de votre serveur et nextcloud.ndd.tld par le domaine de votre instance sans le https://.

Ce qui donne au final:


Cette instance ne dispose pas de plusieurs modules PHP recommandés.

Depuis peu j'ai vu un nouvel avertissement:

Cette instance ne dispose pas de plusieurs modules PHP recommandés. Il est recommandé de les installer pour améliorer les performances, et la compatibilité : bz2

Si vous avez suivi mon tuto pour installer Nextcloud, connectez vous en SSH au serveur et voilà ce qu'il faut faire, collez cette ligne de commande et validez ensuite:

docker exec -it nextcloud bash

La même pour cette ligne de commande qui va installer le module php manquant:

apt-get update && apt-get install -y libbz2-dev && docker-php-ext-install bz2

Tapez exit et validez par Enter et pour terminer, redémarrez Nextcloud:

docker compose restart nextcloud

occ db:add-missing-indices

Pour l'erreur:

occ db:add-missing-indices

Faites cette commande:

sudo docker exec --user www-data -it nextcloud php occ db:add-missing-indices

Pour l'erreur:

Le serveur n'a pas d'heure de début de fenêtre de maintenance configurée...

Faites cette commande:

sudo docker exec --user www-data -it nextcloud php occ config:system:set maintenance_window_start --value=“1”

Le serveur n'a pas aucune heure de début de fenêtre de maintenance configurée

Pour cette erreur:

Il suffit de taper cette commande:

sudo docker exec --user www-data -it nextcloud php occ config:system:set maintenance_window_start --type=integer --value=1

occ maintenance:repair --include-expensive

Merci à softseba de m'avoir fourni la solution sur un plateau!

Pour cette erreur:

En théorie il suffirait de faire cette commande:

sudo docker exec --user www-data -it nextcloud php occ maintenance:repair --include-expensive

Mais l'erreur va persister malgré tout. Ce qu'il faut faire c'est éditer le fichier RepairMimeTypes.php qui se trouve, si vous avez suivi mon tutoriel, dans:

/html/lib/private/Repair

Donc on va éditer RepairMimeTypes.php:

sudo nano RepairMimeTypes.php

Faites ctrl+w pour rechercher 30.0.0.0 et remplacer 30.0.0.0 par 29.0.5.0.

Redémarrez Nextcloud et faites maintenant la commande:

sudo docker exec --user www-data -it nextcloud php occ maintenance:repair --include-expensive

Ce qui donne:


Si vous constatez d'autres alertes, n'hésitez pas à m'en faire part.

zarev

->.<-
🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.