2.9 KiB
Forcer la réinitialisation d'un mot de passe utilisateur Nextcloud
En tant qu'administrateur Nextcloud, il arrive de devoir réinitialiser le mot de passe d'un utilisateur (oubli, compte compromis, départ d'un collaborateur, etc.). L'outil en ligne de commande occ permet de le faire directement depuis le serveur.
Prérequis
- Un accès SSH au serveur hébergeant Nextcloud
- Les droits
sudopour exécuter la commande sous l'utilisateur web (www-datasur Debian/Ubuntu,apacheounginxselon les distributions) - Le chemin d'installation de Nextcloud (typiquement
/var/www/nextcloudpour une installation manuelle ; à adapter pour Docker, Snap ou un hébergement mutualisé)
Réinitialisation interactive
La commande de base, pour réinitialiser le mot de passe de l'utilisateur jdupont :
sudo -u www-data php /var/www/nextcloud/occ user:resetpassword jdupont
Le nouveau mot de passe est demandé deux fois en saisie cachée.
Réinitialisation non interactive
Pour automatiser l'opération (script, déploiement), on peut passer le mot de passe via une variable d'environnement :
export OC_PASS='NouveauMotDePasse'
sudo -u www-data --preserve-env=OC_PASS php /var/www/nextcloud/occ user:resetpassword --password-from-env jdupont
unset OC_PASS
⚠️ Cette méthode laisse temporairement le mot de passe dans l'environnement du shell. À réserver aux scripts maîtrisés et à éviter dans un historique de commandes (préfixer la commande d'un espace si HISTCONTROL=ignorespace est actif).
Cas particulier : chiffrement côté serveur activé
Si le chiffrement côté serveur est activé, la réinitialisation du mot de passe rend les fichiers de l'utilisateur inaccessibles, car la clé de chiffrement est dérivée de l'ancien mot de passe. Pour préserver l'accès aux données, il faut soit :
- connaître l'ancien mot de passe et utiliser la procédure de changement classique,
- ou activer au préalable la clé de récupération (recovery key) et l'utiliser pour rétablir l'accès après réinitialisation.
À vérifier avant toute manipulation sur un compte utilisateur en production.
Après la réinitialisation
Nextcloud n'envoie pas automatiquement de notification à l'utilisateur lors d'une réinitialisation via occ. Il faut donc lui transmettre le nouveau mot de passe par un canal sécurisé et, idéalement, lui demander de le changer dès la première connexion.
Alternative : l'interface web
Pour un cas ponctuel, l'interface graphique reste souvent plus rapide : Paramètres → Utilisateurs, puis l'icône en forme de crayon à côté du compte concerné. La ligne de commande garde l'avantage en cas de perte d'accès admin, de script de masse, ou de serveur sans interface graphique disponible.
Pour aller plus loin
Documentation officielle de la commande occ : https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html