Nextcloud

Nextcloud est un logiciel libre, de site d'hébergement de fichiers et une plateforme de collaboration. À l'origine accessible via WebDAV, n'importe quel navigateur web, ou des clients spécialisés, son architecture ouverte a permis de voir ses fonctionnalités s'étendre depuis ses origines.

Présentation

image.png

Qu’est-ce que Nextcloud ?

Nextcloud est une solution open source qui permet de créer un cloud personnel. C’est un espace de stockage et de partage de fichiers accessible via internet, mais hébergé chez soi ou sur un serveur de confiance.

Nextcloud offre aussi de nombreux outils pour collaborer : calendrier, contacts, messagerie, prise de notes, et bien plus. C’est une alternative aux services cloud propriétaires comme Google Drive ou Dropbox, mais avec un contrôle total sur ses données.

À quoi sert Nextcloud ?

Nextcloud sert avant tout à stocker ses fichiers de manière sécurisée, les partager facilement avec d’autres personnes, et les synchroniser entre plusieurs appareils (ordinateurs, smartphones, tablettes).

Il permet aussi de collaborer sur des documents, d’organiser son agenda, et d’échanger en toute confidentialité grâce à ses fonctionnalités de messagerie et de visioconférence intégrées.

Comment fonctionne Nextcloud ?

Nextcloud s’installe sur un serveur, qui peut être un serveur personnel, un serveur d’entreprise, ou un hébergement cloud. Une fois installé, on y accède via un navigateur web ou des applications dédiées.

Les fichiers et données sont stockés sur ce serveur, et les clients synchronisent leurs données avec lui. Nextcloud offre une interface simple et sécurisée, et peut être étendu avec des applications supplémentaires selon les besoins.

Pourquoi utiliser Nextcloud ?

Nextcloud offre la liberté de garder ses données sous contrôle, sans dépendre d’un service tiers. C’est un système respectueux de la vie privée, sécurisé, et personnalisable.

Il est aussi très pratique pour travailler en équipe, partager des fichiers volumineux, ou organiser sa vie numérique de manière centralisée.

Cas d’usage typiques

Nextcloud est idéal pour :

En résumé

Nextcloud est une solution complète et libre pour créer son propre cloud. Elle permet de stocker, partager, et collaborer facilement tout en gardant le contrôle total sur ses données.

Installation

image.png

Installation pas à pas

Installation des paquets

Dans un premier temps, nous allons faire les mise à jour,  ajouter les paquets nécessaires, comme appache, php etc :

apt-get update
apt-get upgrade
apt-get install apache2 mariadb-server php php-common php-curl php-gd php-intl php-mbstring php-xmlrpc php-mysql php-xml php-cli php-zip php-ldap php-ctype php-dom php-fileinfo php-gd php-json php-posix php-session php-SimpleXML php-XMLReader php-XMLWriter

Encore quelques utilitaires :

apt-get install wget unzip git net-tools

Préparer les sources de Nextcloud

On va télcharger les sourses Nextcloud :

cd /tmp
wget https://download.nextcloud.com/server/releases/latest.zip

image.png

On décompresse l'archive :

unzip latest.zip

On déplace ensuite le répertoire dans le répertoire Apache :

mv nextcloud/ /var/www/html/nextcloud

Il ne reste plus qu'à changer le propriétaire du répertoire :

chown -R www-data:www-data /var/www/html/nextcloud
Créer une base de données pour Nextcloud

Exécutez la commande ci-dessous et laissez-vous guider. 

mysql_secure_installation

Une fois que c'est fait, on se connecte à 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 "Nextcloud"

CREATE DATABASE nextcloud;

uis, on va créer un utilisateur nommé "Nextcloud" qui aura le mot de passe "Nextcloud" et qui aura tous les droits sur la base de données "Nextcloud". Personnalisez ces informations, bien entendu.

GRANT ALL ON Nextcloud.* TO 'Nextcloud'@'localhost' IDENTIFIED BY 'Nextcloud';

On met à jour les autorisations :

FLUSH PRIVILEGES;

Puis, on se déconnecte de l'instance MariaDB :

EXIT;

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>/nextcloud/

image.png

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.

image.png

Quelques secondes plus tard, l'installation est finalisée, bienvenue sur votre serveur Nextcloud !

image.png

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.

image.png

Commandes utiles

image.png

Commandes de base

Description Commande
Voir l’état de l'installation sudo -u www-data php occ status
Vérifier l’intégrité du système sudo -u www-data php occ check
Liste toutes les commandes disponibles sudo -u www-data php occ list ou sudo -u www-data php occ help

Gestion des utilisateurs

Utilisateurs

Description Commande
Lister tous les utilisateurs sudo -u www-data php occ user:list
Créer un utilisateur sudo -u www-data php occ user:add <nom_utilisateur>
Supprimer un utilisateur sudo -u www-data php occ user:delete <nom_utilisateur>
Réinitialiser le mot de passe sudo -u www-data php occ user:resetpassword <nom_utilisateur>
Infos sur un utilisateur sudo -u www-data php occ user:info <nom_utilisateur>

Groupes

Description Commande
Lister les groupes sudo -u www-data php occ group:list
Créer un groupe sudo -u www-data php occ group:add <nom_groupe>
Ajouter un utilisateur à un groupe sudo -u www-data php occ group:adduser <nom_groupe> <nom_utilisateur>

Maintenance & Sécurité

Description Commande
Activer le mode maintenance sudo -u www-data php occ maintenance:mode --on
Désactiver le mode maintenance sudo -u www-data php occ maintenance:mode --off
Réparer la base/fichiers sudo -u www-data php occ maintenance:repair
Vérifier l’intégrité des fichiers sudo -u www-data php occ integrity:check-core

Applications (Apps)

Description Commande
Lister les applications sudo -u www-data php occ app:list
Activer une application sudo -u www-data php occ app:enable <app_id>
Désactiver une application sudo -u www-data php occ app:disable <app_id>

Fichiers et stockage

Description Commande
Scanner tous les fichiers sudo -u www-data php occ files:scan --all
Scanner un utilisateur spécifique sudo -u www-data php occ files:scan --path="<user_id>/files"
Nettoyer les fichiers orphelins sudo -u www-data php occ files:cleanup

Nettoyage et optimisation

Description Commande
Nettoyer les corbeilles sudo -u www-data php occ trashbin:cleanup
Nettoyer les anciennes versions de fichiers sudo -u www-data php occ versions:cleanup
Lire les logs en direct sudo -u www-data php occ log:tail

Mise à jour et configuration

Description Commande
Lancer la mise à jour sudo -u www-data php occ upgrade
Voir toute la configuration sudo -u www-data php occ config:list
Modifier une config d’app sudo -u www-data php occ config:app:set <app> <clé> --value="<valeur>"

LDAP

Description Commande
Voir la configuration LDAP sudo -u www-data php occ ldap:show-config
Tester la configuration LDAP sudo -u www-data php occ ldap:test-config
Vérifier un utilisateur LDAP sudo -u www-data php occ ldap:check-user <uid>