Installer Nextcloud sur Debian 11
Sommaire
I. Présentation
Dans ce tutoriel, nous allons apprendre à installer Nextcloud sur Debian 11 pour créer sa propre plateforme d'hébergements de fichiers et de collaboration. Un projet très intéressant pour ceux qui souhaitent garder la maîtrise de leurs données et éviter de payer pour une solution propriétaire ! Grâce à un système d'applications (plugins), les fonctionnalités de Nextcloud peuvent être étendues, ce qui permet de couvrir un maximum de besoin.
Dans cet article, on se concentrera sur l'installation de la solution Nextcloud (et on s'appuiera sur cette installation dans un autre tutoriel qui sortira prochainement). Pour le serveur Web sous Debian 11, Apache2 sera utilisé avec PHP 8.1 et MariaDB. Vous pouvez utiliser PHP 8.2 si vous le souhaitez, mais cette version est sortie récemment (décembre 2022).
Note : Nextcloud nécessite à minima PHP 8.0.
II. Installation pas à pas de Nextcloud
A. Installation des paquets
Nous devons commencer par installer les paquets nécessaires au bon fonctionnement du serveur Web. Mettons à jour le cache des paquets et les paquets de la machine :
apt-get update apt-get upgrade
Puis, nous allons installer Apache2, MariaDB Server et PHP 8.1 ainsi qu'un lot d'extensions PHP utiles :
apt-get install apache2 mariadb-server php8.1 php8.1-common php8.1-curl php8.1-gd php8.1-intl php8.1-mbstring php8.1-xmlrpc php8.1-mysql php8.1-xml php8.1-cli php8.1-zip
En fonction des applications et fonctions que vous envisagez d'utiliser, il pourra être nécessaire d'installer d'autres extensions PHP par la suite.
Pour être sûr que l'extension PHP 8.1 soit bien actif dans Apache2, exécutez cette commande :
a2enmod php8.1
Nous allons aussi installer les paquets "wget" et "unzip" utiles pour télécharger les sources de Nextcloud et décompresser l'archive ZIP.
apt-get install wget unzip
B. Préparer les sources de Nextcloud
Nous devons récupérer les sources d'installation de Nextcloud et les positionner à la racine du serveur Web, à savoir dans "/var/www/html". Ici, on aura le dossier "nextcloud", ce qui implique que pour accéder à l'application il faudra utiliser cette URL :
http://<IP du serveur>/nextcloud/
Toujours sur le serveur Debian, positionnez-vous dans le répertoire "/tmp" pour télécharger la dernière version de Nextcloud avec wget :
cd /tmp wget https://download.nextcloud.com/server/releases/latest.zip
On décompresse l'archive ZIP téléchargée :
unzip latest.zip
Ce qui donne lieu à un dossier "nextcloud" dans "/tmp" que nous allons déplacer dans son intégralité vers "/var/ww/html/".
mv nextcloud/ /var/www/html/
Il ne reste plus qu'à changer le propriétaire des données de Nextcloud pour que ce soit l'utilisateur d'Apache2 :
chown -R www-data:www-data /var/www/html/nextcloud
Les sources d'installation sont en place. Passons à la suite.
C. Créer une base de données pour Nextcloud
L'instance MariaDB doit être configurée : nous devons créer une base de données dédiée à Nextcloud et un utilisateur spécifique qui aura des droits uniquement sur cette base de données. Mais, avant cela, nous allons exécuter le script de sécurisation de MariaDB, ce qui permettra notamment de changer le mot de passe root.
Exécutez la commande ci-dessous et laissez-vous guider. Si vous avez besoin d'aide, regardez dans cet article.
mysql_secure_installation
Une fois que c'est fait, connectez-vous à votre instance MariaDB avec le compte root et le mot de passe que vous venez de définir.
mysql -u root -p
Après authentification, vous avez accès au prompt MariaDB. Nous devons commencer par créer une base de données que nous appellerons "db23nextcloud".
CREATE DATABASE db23nextcloud;
Puis, on va créer un utilisateur nommé "usr23nextcloud" qui aura le mot de passe "Password14" et qui aura tous les droits sur la base de données "db23nextcloud". Personnalisez ces informations, bien entendu.
GRANT ALL ON db23nextcloud.* TO 'usr23nextcloud'@'localhost' IDENTIFIED BY 'Password14';
On met à jour les autorisations :
FLUSH PRIVILEGES;
Puis, on se déconnecte de l'instance MariaDB :
EXIT;
D. Installation de Nextcloud
Tout est prêt, nous allons pouvoir finaliser l'installation de Nextcloud à l'aide d'un navigateur. Avec votre navigateur préféré, accédez à l'adresse suivante :
http://<IP du serveur>/nextcloud/
Vous devriez arriver sur une page comme celle ci-dessous. Ici, il va falloir définir un nom d'utilisateur et un mot de passe pour le compte Administrateur principal de Nextcloud.
Puis, un peu plus bas dans la base, il faut indiquer les informations de connexion au serveur MariaDB. Ici, on réutilise les informations définies précédemment, comme sur l'image ci-dessous. Cliquez sur "Installer" quand c'est fait.
Quelques secondes plus tard, l'installation est finalisée, bienvenue sur votre serveur Nextcloud !
Dès à présent vous pouvez créer de nouveaux fichiers, ou charger des fichiers existants. Il existe aussi des clients de synchronisations pour les postes de travail, ainsi que des applications mobiles.
IV. Conclusion
Voilà, l'installation de base de Nextcloud est effectuée ! Toutefois, il vous reste encore du travail si c'est un serveur qui doit être mis en place en production : sécurisation Apache2, passage du site en HTTPS, mise en place d'un nom de domaine, installation de CrowdSec pour détecter et bloquer les attaques, etc...
Comment avez-vous pu installer PHP 8.1 sur Debian 11 sans dépôt non-offiel ?
Debian 11 est pour le moment en PHP 7.4, et Debian 12, en beta, est sous PHP 8.2.
Après il y a peut-être un dépôt externe à ajouter ?
Perso, je reste sur la version 25 de NextCloud, qui est toujours maintenue à jour. Debian 12 arrive dans quelques mois sinon.
Oui, il eût été judicieux de préciser comment ajouter le dépôt Sury qui permet de disposer de versions plus récentes de PHP.
Bonjour Florian !!
Merci pour ce tuto.
Concernant les commentaires précédent, il me parait important de respecter la procédure suivante:
Commencez par mettre à jour vos sources en ajoutant les deux dépôts suivant dans le fichiers /etc/apt/source.list
deb http://deb.j'apprend la politesse.org/debian stable main
deb http://deb.je respecte le travail des autres.org/debian stable main
Ensuite installez les paquets suivants:
apt install ‘Bonjour’
apt install ‘Merci pour ce tuto, pour votre temps, pour votre investissement’
Et voilà, vous pouvez maintenant remercier, posez des questions, et soumettre vos remarque sans risquer de provoquer un kernel panic chez l’auteur !!
La bise et merci pour ton taf de malade Florian !!
Stef