J’ai un VPS sous Debian 11 pour faire tourner quelques services.
Depuis hier, certaines commandes m’obligent à ajouter « sudo » tels que « ifconfig » / « reboot » / « shutdown » / « cron ».
Si je ne fais pas « sudo su » puis mes commandes ou "sudo ", il m’informe que la commande est introuvable.
Je souhaite enlever cette règle, car certaines actions ne peuvent plus se faire automatiquement.
Les actions que j’ai faites récemment qui aurait pu provoquer le problème (ce ne sont que des suppositions) :
Interdiction de se connecter en « root » en SSH
Ajout d’un user dans le groupe « sudo »
J’ai désinstallé/réinstallé le paquet « sudo » sans changement.
Quelle règle ? Si bash te dit « commande introuvable », c’est parce que le $PATH est incomplet et ne contient pas /sbin et /usr/sbin. Comment passes-tu root si tu n’utilises ni sudo ni le login root ? Si c’est avec « su » tout court, essaie plutôt « su - ».
PS: « sudo su » est une absurdité sans nom. Pour obternir un shell root avec sudo, utilise plutôt l’option -s ou -i (voir la page de manuel pour les différences).
Effectivement, je passe en faisant simplement « su », en passant par « su - », je n’ai pas le souci.
Ce qui est assez « drôle » c’est qu’en me remettant sur mon utilisateur classique (après su -), je n’ai pas non plus le souci, il ne me dit pas commande introuvable.
Lorsque je parlais de règle, avant même avec un utilisateur lambda, je pouvais faire la commande, maintenant ce n’est plus possible.
En faites le but serait que depuis mon utilisateur classique, je puisse faire la commande « cron » sans passer par root ni sudo.
Je ne sais pas si je m’exprime avec les bons termes
J’ai lu ça sur un forum, il a indiqué qu’on devait normalement avoir la liste que j’ai donnée.
Est-il possible passer sous un $PATH « amélioré » par groupe par exemple ?
Il faudrait qu’un de mes groupes puisse lancer « cron » sans sudo (si c’est possible).
Mettre une cron en place pour que l’utilisateur www-data ou autre fasse quelque chose c’est normalement suffisant, tu a la possibilité de soit rajouter le path adéquat au PATH de l’utilisateur ou de lui faire un petit fichier sudoers.d/nextcloud avec la ou les permissions adéquat.
Au passage tu devrais pour faire plus propre et sécurisé utiliser un utilisateur propre à Nextcloud avec les permissions adéquate, il y a déjà eu sur ce forum des discussions là-dessus.
Pourquoi nextcloud aurait-il besoin d’exécuter cron ? Cron est le démon qui exécute les tâches périodiques, il est lancé au démarrage et il n’y a pas lieu de le relancer. Si c’est pour gérer des tâches cron, pas besoin de lancer cron lui-même, cela se fait avec crontab.