Cloud & conteneurs

Installer et sécuriser Nextcloud avec Nginx

Installer Nextcloud sur Debian ou Ubuntu avec Nginx, PHP-FPM 8.2 et MariaDB : téléchargement dans /var/www, droits www-data, bloc serveur Nginx et assistant web.

· 4 min de lecture · niveau intermédiaire · sur PHP 8.2

Nextcloud se démarque comme une solution open-source polyvalente. Pour maximiser les avantages de cette plateforme, il est essentiel de mettre en place une installation robuste et de renforcer la sécurité. Cet article vous guidera à travers le processus d'installation de Nextcloud sur votre serveur, en mettant particulièrement l'accent sur l'utilisation sécurisée du populaire serveur web Nginx.

Prérequis

  1. Un serveur exécutant une distribution Linux (par exemple Debian, Ubuntu).

Étape 1 : Installation des packages

1. Mettre à jour la source des packages

  • sudo (Super-User Do) permet d'effectuer des commandes en tant que root
  • apt (Advanced Packaging Tool) est le gestionnaire de package utilisé
  • update permet de mettre à jour la listes des paquets disponibles

2. Installer le service Web Nginx

  • nginx est un service web recommandé pour sa sécurité et ses perfomances

3. Installer PHP et les extensions requises

  • php-fpm est une alternative à php offrant de bien meilleures performances
sudo apt install php8.2-{fpm,bz2,curl,mbstring,intl,cli,zip,xml,imagick,mysql,gd}

4. Installer la base de données MariaDB

  • mariadb est un fork de mysql mieux optimisé

Étape 2 : Mise en place de Nextcloud

7. Télécharger la dernière version de Nextcloud

  • cd (change directory) permet de changer de répertoire
  • /tmp est le répertoire utilisé pour les fichiers temporaires
  • wget (web get) permet d'obtenir/télécharger le contenu d'une page web

8. Extraire le dossier vers son répertoire

  • unzip permet d'extraire le contenu d'un fichier archiver au format .zip
  • mv (move) permet de déplacer un répertoire vers un autre emplacement
  • /var/www est le répertoire utilisé pour stocker les fichiers web. Il est recommandé pour la sécurité de ne pas utiliser /var/www/html

9. Changer son propriétaire en www-data

  • chown (change owner) permet de changer le propriétaire d'un répertoire
  • www-data est l'utilisateur du système utilisé par les services web comme Nginx
  • -R indique la récursivité pour appliquer les droits sur les répertoires enfants.

Étape 3 : Configuration de la base de données

10. Se connecter à MariaDB avec mysql

  • mysql permet d'interagir un système de gestion de base de données en SQL
  • -u indique l'utilisateur qui sera utilisé pour s'identifier, ici root
  • -p indique le mot de passe pour s'identifier, à saisir après la commande
  • le mot de passe pour le compte root est vide par défaut en utilisant sudo

11. Se connecter à MariaDB avec mysql

Étape 4 : Configuration de Nginx

Créer un fichier de configuration de bloc serveur

  • nano permet d'éditer des fichiers, les raccourcis ^Key symbolise CTRL + Key
  • /etc/nginx/sites-available est l'emplacement des configurations des sites web

Exemple de configuration Nginx :

Adaptez les valeurs suivantes en fonction de votre configuration et de votre domaine.

  • server_name votre_ip_ou_domaine.example;
  • root /var/www/nextcloud;

Activer la configuration

Étape 5 : Finalisation de l'installation

12. Finir la configuration depuis votre navigateur web

Illustration 1 — Installer et sécuriser Nextcloud avec Nginx

Adaptez votre_ip_ou_domaine.exemple avec votre configuration. L'adresse doit être la même que celle indiqué en tant que server_name dans /etc/nginx/sites-available

Vous pouvez vous voir le modèle ci-dessous où les champs Nom d'utilisateur et Mot de passe sont à remplacer avec des valeurs fiables et robustes.

Illustration 2 — Installer et sécuriser Nextcloud avec Nginx

La configuration de la base de données dépend des informations que vous avez saisis lors de l'étape 4.

Les applications recommandés Calendar, Mail, Talk, Nextcloud Office... peuvent être installés selon vos préférences et ne sont pas obligatoires. Si vous souhaitez avoir un bon aperçu de ce que vous pourrez faire avec Nextcloud vous pouvez alors les installer dès maintenant.

Autrement, il sera toujours possible de les retrouver sur l'App Store https://apps.nextcloud.com/.

Illustration 3 — Installer et sécuriser Nextcloud avec Nginx

La suite à suivre très vite avec au programme l'optimisation, la sécurité et la personnalisation.