Sudo et crontab : Quelles bonnes pratiques?

Mon serveur YunoHost

Matériel: VPS acheté en ligne
Version de YunoHost: 11.0.10.2
J’ai accès à mon serveur : En SSH | Par la webadmin

Description du problème

Je suis un peu perdu sur la gestion des utilisateurs et de l’admin. Et je ne voudrais pas créer de trou de sécurité.

La situation :

  • J’ai créé un utilisateur (non YNH) dédié à des petites tâches d’admin (externalisation des sauvegardes,…). Appelons le “small_admin”. Je n’utilise pas l’utilisateur ‘admin’ car j’ai dû installer des trucs en plus et je ne veux pas perturber le user admin, géré par YNH.
  • les scripts lancés par “small_admin” ont besoin de pouvoir faire du sudo. J’ai donc ajouté small_admin au groupe sudoers.

→ impossible d’executer ces scripts via la crontab car sudo “à besoin” d’un mot de passe lors de l’exécution.

Les solutions que j’ai identifiées :

  1. faire que sudo ne demande plus de mot de passe pour small_admin, comme pour admin. (Il faut que je creuse sur le comment faire)
  2. Intégrer les scripts dans la crontab de root via ‘sudo crontab -e‘.
  3. Intégrer les scripts dans la crontab de l’utilisateur admin.
  4. Passer plutôt par un user YNH (LDAP) et lui attribuer les groupes qui vont bien. Inconvénient, ce nouvel utilisateur n’a aucunement besoin de pouvoir acceder aux applications hostées par YNH.

Quelle serait la meilleure solution respectant les règles de sécurité et s’intégrant au mieux avec l’admin Yunohost ?

Merci d’avance pour vos avis/idées/recommandations/remarques , bref, merci pour tous vos retours futurs :wink:

Plop

Perso (et c’est peut-être une mauvaise pratique) je fais tourner ça sous le crontab de root.

Note pour les cron : tu peux aussi stocker le script dans les différents sous-dossiers cron.xxx de /etc/ :
Il y a différentes granulométries :

  • Hourly
  • Daily
  • Weekly
  • Monthly
1 Like

Merci de ton retour.
J’ai finalement opté pour la même solution.
A la réflexion, elle me semble la plus sûre du point de vue sécurité, car elle n’implique pas de modifier de droits quelconques…

ps : Je ne connaissais pas les dossiers /etc/cron.xxx, j’y ai trouvé plein de trucs :wink: