[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Comment mettre à jour un fichier appartenant à l'utilisateur root avec cron ?




Effectivement, il y a des questions à se poser quand on utiliser
l’utilisateur « root ». Mais là, dans ce cas, si je comprends bien
tu cherche à modifier un fichier « système » qui appartient
effectivement à … « root » avec un script que tu lanceras de ce même
serveur à partir d’un appel système géré par … « root » (cron) pour
contraindre les accès à ton serveur.
Donc, dans ce cas précis et si ton script est bien écrit et n’ouvre
pas trop les vannes (umask, droits d’exécution, …) je ne vois aucune
contre-indication à le lancer « root ».
Si tu veux mettre ceinture et bretelles, test dans ton script que
c’est bien le processus de gestion des CRON qui appelle ton script…

Donc, pour résumer, voici ce que je ferais :
- script ayant les droits de root soit par héritage sudo, soit
  directement sur l’ID appelant. Vérification que le père d’appel
  du script est bien « cron ».
- exécution du script dans le /etc/cron.d avec les droits de root

Bonne soirée

--
Pierre Malard

  « Les utopies ne sont souvent que des vérités prématurées »
                                                          Alphonse de Lamartine
   |\      _,,,---,,_
   /,`.-'`'    -.  ;-;;,_
  |,4-  ) )-,_. ,\ (  `'-'
 '---''(_/--'  `-'\_)   πr

Merci pour les détails, bon, j'ai un peu de mal à comprendre " soit par héritage sudo, soit directement sur l’ID appelant  "
Un héritage sudo, je ne connais pas l'_expression_, mais, si c'est utiliser un sudoers, il me faudra donner le mot de passe, ce qui n'est pas sécure. Si c'est autre chose, il faut que je regarde.
Idem pour l'ID appelant, pas forcément à l'aise avec cette formulation, si tu peux reformuler.

Pour les droits d’exécution, ça va, je comprend.
Pour Umask également, je défriche mais je ne les utilises que très peu pour le moment.

Concernant le script, ce serait celui la, il n'est pas spécialement problématique, bon, tout de même QUATRE lignes.
Je suppose que je peux de ce faire le lancer directement depuis le crontab de root, mais, un script de 4 lignes ce sera mieux.

cd /etc
sudo mv hosts.deny hosts.deny.bak
sudo wget https://hosts.ubuntu101.co.za/superhosts.deny
sudo mv superhosts.deny hosts.deny


Reply to: