Création d’un CHATONS – 3 / 5 : NextCloud server
Tous les pré-requis étant remplis, nous pouvons enfin installer le cœur de métier de notre CHATONS ; à savoir l’installation à proprement parler de l’applicatif NextCloud tant attendu !!
Pour rappel, tout ceci s’appuie sur le manuel de référence fourni par NextCloud : Installation and server configuration [en]
Installation sur le serveur www
Nous allons télécharger le script PHP pour l’installation de NextCloud server ici :
https://nextcloud.com/install/
Plus précisément, plus en bas de page :
Download server –> Community projects –> Web installer –> Copier le lien du script d’installation
Dossier de stockage des données
Pour être cohérent, nous créons tout d’abord le répertoire dédié au stockage de données au sein de l’aire RAID5 précédemment crée, à savoir dans /home :
sudo mkdir /home/_nextcloud
sudo chown -R manager:www-data /home/_nextcloud
sudo chmod -R ug+rwX /home/_nextcloud
sudo chmod -R o-rwX /home/_nextcloud
Script d’installation NextCloud
Le script d’installation de NextCloud server est disponible via cette page :
https://nextcloud.com/install/
Plus précisément, en bas de page :
Download server –> Community projects –> Web installer –> Copier le lien du script d’installation
Nous allons télécharger le script d’install dans le répertoire du vhost via le lien indiqué :
cd /var/www/vhosts/cloud.landinux.lan &&\
wget 'https://download.nextcloud.com/server/installer/setup-nextcloud.php'
Enfin on peut le lancer via son navigateur, et découvrir le wizard :
http://cloud.landinux.lan/setup-nextcloud.php
Il nous est ensuite demandé de renseigner :
- Des identifiants d’administration à conserver précieusement. Éviter le trop traditionnel « admin »
- L’emplacement du dossier pour le stockage des données
- La configuration pour la connection à la base de donnée, en l’occurrence PostgreSQL
Les applis principales sont proposées, installons les toutes (même si NextCloud Office peut poser des problèmes …).
Enfin NextCloud est installé pour de bon, pour de vrai !
Encore des ajustements …
… réglages … configurations
En se rendant dans les « Paramètres d’administration », outre de remarquer un nombre assez important de réglages divers, nous sommes alertés de diverses configurations manquantes :
Config php.ini
La limite de mémoire PHP est inférieure à la valeur recommandée de 512 Mo.
La mémoire à allouer dépend des usages, et surtout de laquantité de RAM disponible sur le serveur. Nous disposons de 4Go, nous allons voir en allouant 1Go à PHP-FPM …
Ceci sera pour nous l’occasion de modifier quelques variable dans /etc/php/8.1/fpm/php.ini :
memory_limit = 1024M
upload_max_filesize = 2048M
max_file_uploads = 30
Appliquer les changements :
sudo service php8.1-fpm restart
HTTPS/SSL
Accès non sécurisé au site via HTTP. Il est fortement conseillé de configurer votre serveur pour exiger HTTPS à la place
Ce point sera réglé au chapitre suivant, lors de la mise en production.
À noter qu’excepté les certificats SSL auto-signés, il n’est pas prévu de moyens permettant de générer un certificat valide sur un nom de domaine .LAN n’étant pas basé sur un TLS (Top Levels Domains), en l’occurrence landinux.lan dans notre exemple :
Postfix / SMTP
Vous n’avez pas encore défini ou vérifié la configuration de votre serveur de messagerie.
…
Réglages régionaux
Votre installation n’a pas de préfixe de région par défaut.
Ajouter ces lignes au fichier /var/www/vhosts/cloud.bastbalt.lan/config/config.php :
'default_phone_region' => 'FR',
'default_language' => 'fr',
'default_locale' => 'fr',
'force_locale' => 'fr',
MemCache
Pas de mémoire cache configurée.
…
PHP-OPcache
Le module php-imagick n’a aucun support SVG dans cette instance.
…
PHP-Imagick
Le module php-imagick n’a aucun support SVG dans cette instance.
…
Connexion à l’annuaire LDAP
Nous nous baserons sur une installation déjà fonctionnelle, ainsi que bien sûr la doc officielle fournie par docs.nextcloud.com : User authentication with LDAP.
Nous nous assurons de la présence du module php-ldap :
dpkg --get-selections | grep php8.1-ldap
php8.1-ldap install
Nous nous connectons en administrateur sur l’interface http://cloud.landinux.lan/ :
Aller dans la barre latérale : Administration –> Integration LDAP/AD et renseigner les paramètres :
- Serveur : localhost, « Détecter le port » –> 389
- admin DN : cn=admin,dc=landinux,dc=org
- Mot de passe admin
- DN de base : dc=landinux,dc=org
On remarquera le petit voyant en bas se mettre au vert : Configuration OK
Filtrer les utilisateurs de la classe ldap InetOrgPerson.
Vérifier si les utilisateurs « remontent » avec le bouton en bas « Vérifier les paramètres et compter les utilisateurs »
Renseigner Nom d’utilisateur LDAP/AD + autres attributs : uid
Se rendre dans l’administration des utilisateurs.
Les utilisateurs crées dans la base LDAP apparaissent : ça semble fonctionner !
Nous allons tout de même vérifier (via un autre navigateur) que les identifiants LDAP fonctionnent :
La première connexion est un peu longue, c’est normal, il faut générer un nouveau profil utilisateur …
Et nous voilà ravis d’accéder au dashboard de notre instance NextCloud :
Pour aller plus loin …
Permettre aux utilisateurs de changer certaines informations personnelles
Notamment le mot-de-passe
Gestion des groupes
Applis NextCloud
La suite … 4/5 : Mise en production
À présent que l’applicatif NextCloud fonctionne « pile-poil », nous allons pouvoir le mettre en production, accessible à tous via la grande toile d’Internet …