Sudo

:tagsudo, tagsudoers:

Última actualització: setembre de 2019

Si tenim instal.lat sudo podem executar un programa com un altre usuari. La utilitat principal es permetre que usuaris normals puguin executar comandaments amb els privilegis de root. Treballarem sobre l'arxiu /etc/sudoers. Per a editar-lo ho farem amb visudo.

A sudoers tenim potencia a l'hora de definir grups de comandaments, usuaris, etc amb l'ús d'alias. Aquí només veurem uns exemples simples en els que no farem servir alias.

    • Necessitem afegir una línia a /etc/sudoers per a permetre que l'usuari bmw pugui executar com a root aquest script: /Magatzem/bins/segfilezsuse
    • Necessitem afegir una línia a /etc/sudoers per a permetre que l'usuari bmw pugui apagar l'equip amb "poweroff"

*******************************************

# sudoers file.

# This file MUST be edited with the 'visudo' command as root.

# See the sudoers man page for the details on how to write a sudoers file.

# Atenció, posarem les nostres línies al FINAL del fitxer /etc/sudoers

bmw debiant1=PASSWD:/Magatzem/bins/segfilezsuse

bmw debiant1=PASSWD:/usr/bin/updatemanager

bmw debiant1=NOPASSWD:/sbin/poweroff

# Group privilege specification

%wheel ALL=NOPASSWD:/usr/bin/ntpdate

*******************************************

El format de les línies afegides és el següent: usuari (bmw), ordinador (debiant1), condició d'execució del comandament (PASSWD, NOPASSWD, EXEC, NOEXEC) i comandament a executar, tenint en compte que ha de ser amb la ruta completa sempre. Posarem les nostres línies al FINAL del fitxer /etc/sudoers

Veiem doncs, que bmw podrà executar /Magatzem/bins/segfilezsuse, però haurà de proporcionar el seu password. En canvi podrà executar /sbin/poweroff sense haver de proporcionar cap password.

Hi ha possiblitat de combinar varis comandaments en una sola línia. Per exemple les dues línies anteriors es podrien fusionar en una sola:

bmw debiant1=PASSWD:/Magatzem/bins/segfilezsuse,NOPASSWD:/sbin/poweroff