Outils pour utilisateurs

Outils du site


admin:services:valise.chapril.org

Service valise.chapril.org

Valise est un service de synchronisation d'informations personnelles et de partage de fichiers sur la base de NextCloud.

Routage

Uniquement le port HTTPS (TCP/443)

Uniquement le port HTTPS (TCP/443) vers le port HTTP (TCP/80).

Installation

Installation du système de la VM

La machine a été installée en respectant les procédures d'installation de VM.

Installation des services

L'installation et la configuration sont basées sur les instructions originales données par le guide d’administration de NextCloud.

Installation d'Apache et de la base de PHP

Installer les paquets :

apt install apache2 libapache2-mod-php php-cli
a2enmod rewrite
a2enmod headers

Modifier le fichier de configuration des ports d'Apache pour forcer l'écoute sur le port 80 de l’adresse IPv4. Pour cela, dans le fichier /etc/apache2/ports.conf, remplacez la ligne Listen 80 par Listen 0.0.0.0:80.

Installation de PostgreSQL

Installer le paquet serveur de la base de données :

apt install postgresql pwgen

Générer un mot de passe fort pour le futur utilisateur de la base de données :

pwgen -syr "'" 15 1

Passer en ligne de commande SQL superviseur de postgres :

su postgres -c psql

Créer l'utilisateur de la base nextcloud en utilisant le mot de passe précédent :

create role nextcloud with login password '<pwd>';

Créer la base de données pour nextcloud :

create database nextcloud owner nextcloud;

Sortir de psql avec Ctrl+D.

Installation des modules PHP pré-requis

apt install php-curl php-gd php-mbstring php-xml php-zip php-pgsql php-bz2 php-intl php-imagick

Préparation du volume de stockage

En raison de la grande quantité de données stockées, l'application Nextcloud et ses fichiers de donnée sont stockées dans leur propre volume. Il est donc nécessaire de préparer et configurer ce volume :

mke2fs -L nextcloud  remount-ro -m 0 /dev/mapper/valise--vg--data-nextcloud
mkdir /var/www/nextcloud

Ajouter le volume à la table système en éditant /etc/fstab et en y ajoutant cette ligne :

/dev/mapper/valise--vg--data-nextcloud /var/www/nextcloud ext4 noexec,nosuid,nodev,errors=remount-ro 0 0

Monter le volume et attribuer les droits sur sa racine à l’utilisateur www-data :

mount /var/www/nextcloud
chown www-data:www-data /var/www/nextcloud

Installation de Nextcloud

Récupérer les fichiers de Nextcloud et les déployer :

cd /var/www/
wget https://download.nextcloud.com/server/releases/nextcloud-16.0.4.tar.bz2
tar xvf nextcloud-16.0.4.tar.bz2
chown -R www-data:www-data nextcloud
rm nextcloud-16.0.4.tar.bz2

Lancer l'installation (création du contenu de la base et du fichier de configuration) :

cd /var/www/nextcloud/
occ maintenance:install --database "pgsql" --database-name "nextcloud" --database-host "localhost" --database-user "nextcloud" --database-pass '<DB_PASS>' --admin-user "chapril" --admin-pass "<ADM_PASS>"

Remplacez <DB_PASS> par le mot de passe de l'utilisateur de PostgreSQL généré auparavant en mettant bien deux single quotes autours.

Remplacez <ADM_PASS> par le mot de passe de votre choix. Le mot de passe doit être long (au moins 14 caractères) tout en restant utilisable sur une interface Web.

La commande d'installation est longue (1 à 2 min). Soyez patient.

A l'issue de la commande, le contenu de la base est créée (tables commençant par oc_ et le fichier de configuration /var/www/nextcloud/config/config.php est généré.

Éditer le fichier /var/www/nextcloud/config/config.php pour ajouter à trusted_domains :

1 = > 'valise.chapril.org'

Mise à jour

Préparation

La mise à jour de Nextcloud prend en général de 5 minutes pour une mise à jour mineures, et jusqu'à 30 minutes pour une mise à jour majeure.

La mise à jour interrompt le service, il faut donc la planifier et prévenir les utilisateurs quelques jours à l'avance en :
  • Envoyant un message à tous les comptes avec l'application Annonces de Nextcloud (depuis l'interface Web et un compte admin) ;
  • Signalant la maintenance sur status.chapril.org.

Exécution

Se connecter en root sur valise.cluster.chapril.org et se positionner dans le répertoire de Nextcloud :

cd /var/www/valise.chapril.org/public_html/

Lancer la procédure de mise à jour :

sudo -u www-data php updater/updater.phar

Répondez positivement à toutes les questions posées par le script et acceptez de quitter le mode maintenance si tout s'est bien passé.

Il arrive que la procédure ne puisse par lancer la mise à niveau des applications. Dans ce cas répondez oui à la question Rester en mode maintenance, et lancer la procédure séparément :
occ upgrade
occ maintenance:mode --off

Pour éviter des problèmes de favicon, réparez le thème et redémarrez les services Web :

occ maintenance:theme:update
sudo systemctl restart php8.2-fpm apache2

Finalisation

Contrôle de sécurité

Se connecter par l'interface Web sur un compte admin et aller sur la page Paramètres/Vue d'ensemble. Si tout va bien, une coche verte est affichée avec le texte Tous les test ont réussis. Sinon, suivez les instructions données par Nextcloud pour résoudre le(s) problème(s).

En cas de mise à jour majeure, lancez également le scan de sécurité externe (au même endroit de l'interface).

Mise à jour du numéro de version

Pour finir, dans Paramètres/Personnaliser l'apparence, modifier le numéro de version affiché qui est au début de la phrase de slogan.

N'oubliez pas de clore l'incident sur status.chapril.org.

Notes

L'outil en ligne de commande pour administrer de NextCloud

occ list
occ log manage
occ user:add cmann@april.org -group admin

Cron

Chemin du fichier contenant les tâches Cron spécifique au service NextCloud : /etc/cron.d/valisechaprilorg.

PostgreSQL

Se connecter à la base de données :

sudo -Hiu postgres psql nextcloud

Requête SQL pour voir les requêtes en cours

SELECT * FROM pg_stat_activity;

Script d'aide à la configuration de PostgreSQL

Consulter le fichier ''postregsqltuning.pl''.

Chemin du fichier de configuration

Le fichier est /etc/postgresql/13/main/conf.d/custom-chapril.conf.

Regarder les applications et leurs consommations

lscpu | grep -i ^proc
tail -f /srv/valise.chapril.org/www/data/nextcloud.log | jq .
tail -n 200 -f /srv/valise.chapril.org/www/data/nextcloud.log | jq .
pgrep -af cron
iotop -o -d3 -a

À éviter

Ne pas exécuter ceci :

ncdu -x /var/www/valise.chapril.org/data/

Table OC_JOBS

id   |                         class                         |                                                       argument                                                        |  last_run  | last_checked | dur
16758 | OC\Settings\BackgroundJobs\VerifyUserData             | {"verificationCode":"","data":"","type":"email","uid":"","try":6,"lastRun":1586671205} |          0 |   1652827018 |    0
11912 | OCA\Talk\BackgroundJob\ExpireSignalingMessage         | null                                                                                                                  | 1593606009 |   1652827017 |    0
11913 | OCA\Talk\BackgroundJob\RemoveEmptyRooms               | null                                                                                                                  | 1593606008 |   1652826959 |    0
209234 | OCA\DAV\BackgroundJob\RefreshWebcalJob                | {"principaluri":"principals\/users\/","uri":"icsteamupcom-3"}                                                     | 1652821869 |   1652821869 |  120
21 | OC\Preview\BackgroundCleanupJob                       | null                                                                                                                  | 1652820489 |   1652821869 |    0
14 | OCA\UpdateNotification\Notification\BackgroundJob     | null                                                                                                                  | 1652736091 |   1652821869 |    2
110482 | OCA\Activity\BackgroundJob\DigestMail                 | null                                                                                                                  | 1652821869 |   1652821869 |    0
16774 | OCA\WorkflowEngine\BackgroundJobs\Rotate              | null                                                                                                                  | 1652820489 |   1652821869 |    0
251542 | OCA\DAV\BackgroundJob\RefreshWebcalJob                | {"principaluri":"principals\/users\/","uri":"0110007yindex-educationnet"}                                      | 1652560537 |   1652821868 | 1471
286844 | OCA\DAV\BackgroundJob\RefreshWebcalJob                | {"principaluri":"principals\/users\/","uri":"valisechaprilorg-2"}                                          | 1652219711 |   1652821868 |    0
5 | OCA\Files_Versions\BackgroundJob\ExpireVersions       | null                                                                                                                  | 1652821456 |   1652821456 |    0
326894 | OCA\DAV\BackgroundJob\RefreshWebcalJob                | {"principaluri":"principals\/users\/","uri":"calendargooglecom"}                                         | 1652219810 |   1652821456 | 1592
157918 | OCA\DAV\BackgroundJob\RefreshWebcalJob                | {"principaluri":"principals\/users\/","uri":"icsteamupcom"}                                                       | 1652821456 |   1652821456 |  410

Exécuter le script postgresqltuner.pl

sudo -Hiu postgres postgresqltuner.pl
admin/services/valise.chapril.org.txt · Dernière modification : 2026/02/16 17:05 de fhenry2