Essayons de permettre à un utilisateur spécifique, qui fait partie du groupe Sudo
, d'effectuer un arrêt d'urgence à l'aide du code suivant:
echo 1 > /proc/sys/kernel/sysrq
echo o > /proc/sysrq-trigger
Notez que ceci est sans en utilisant la commande Sudo
!
EDIT: oublié de mentionner que les deux fichiers, appartenant à root:root
, refusent toute autorisation ou modification du propriétaire, même par l'utilisateur root
.
Un pirate informatique compromet un système, qui est généralement laissé à fonctionner sans surveillance, et obtient l'autorisation de lire des données confidentielles. Plutôt que de permettre au pirate de continuer, un script automatisé éteint la machine (supposons que le piratage a été détecté).
Bien que ce ne soit pas mon cas d'utilisation exact, il est assez similaire.
Créer un script bash pour exécuter les 2 lignes de code ci-dessus, en lui donnant les propriétaires root:Sudo
et en ajoutant une ligne à visudo
pour permettre à l'utilisateur spécifique d'exécuter la tâche sans avoir à saisir le mot de passe.
Tentative de changement du propriétaire des 2 fichiers en root:Sudo
.
Tentative de modification des autorisations des 2 fichiers de sorte que le groupe root
puisse leur écrire.
L'idée est de ne pas "cuire" le mot de passe pour Sudo
, ce qui me permettra de changer régulièrement, sans oublier de modifier les autres fichiers (ou d'avoir le processus qui éteint l'ordinateur en cours d'exécution avec root
privilèges). Merci d'avance pour votre aide.
Mon avis est de changer vos lignes en quelque chose comme ceci dans votre script:
echo 1 | Sudo tee /proc/sys/kernel/sysrq > /dev/null
echo o | Sudo tee /proc/sysrq-trigger > /dev/null
Et donnez à l'utilisateur spécifique l'accès à exécuter la commande tee
avec ces arguments sans qu'il soit nécessaire d'entrer un mot de passe, quelque chose comme:
username ALL=(root:root) NOPASSWD: /usr/bin/tee /proc/sys/kernel/sysrq
Rappelez-vous qu'il n'est pas possible de rediriger une chaîne dans un fichier nécessitant une autorisation spécifique en utilisant >
, cela signifie quelque chose comme:
Sudo echo hi > file
echo hi Sudo > file
ne va pas au travail.
En même temps, vous ne pouvez pas simplement changer le propriétaire de ces fichiers, car /proc
est un système de fichiers virtuel géré par Kernel.