Cos'e' e come installare e configurare il programma Sudo

Sudo (Superuser Do) e' uno strumento che consente all'amministratore di sistema di attribuire ad utenti o gruppi specifici la facolta' di eseguire determinati comandi con i privilegi di superuser (root) o un utente diverso pur non essendo a conoscenza della relativa password. Su alcuni sistemi (come ad esempio Slackware) solamente l'utente root puo' riavviare/spegnere la macchina ed in questo caso potremo utilizzare sudo per permettere ad un utente 'generico' di far cio'. Oppure in Ubuntu per esempio, non si puo' accedere direttamente al sistema con l'utente root ma e' necessario loggarsi con un utente non privilegiato ed  utilizzare il comando sudo per eseguire manzioni amministrative.  L'applicazione e' in grado di registrare sia i comandi che gli argomenti digitati dagli utenti. E' disponibile il pacchetto per tutte le distribuzioni e non sara' quindi un problema installarlo. Con debian bastera' digitare (come utente root):

apt-get install sudo

Per configurarlo e' necessario editare il file 'sudoers' tramite un apposito comando: visudo

In questo modo viene aperto il file 'sudoers' nell'editor 'vi'.
E' utile usare 'visudo' perche' l'applicazione impedisce che il file venga modificato da piu' persone simultaneamente e controlla gli errori di sintassi.

Per consentire all'utente 'lucaercoli' di poter eseguire il comando 'kill' con i privilegi di utente root dovrete eseguire questa procedura:

visudo

Si aprira' cosi' l'editor con il contenuto del file 'sudoers'.
Cercate la linea con scritto "User privilege specification" e dopo aver posizionato il cursore sulla riga con scritto "root ALL=(ALL) ALL" digitate il carattere 'o'. In questo modo l'editor 'vi' andra' a capo consentendovi di scrivere. E' quindi necessario scrivere questo:

lucaercoli ALL = /bin/kill

Potrete inserire altri comandi separandoli con la ','
Per salvare il file digitate

ESC seguito da :wq

Adesso l'utente 'lucaercoli' potra' eseguire 'kill' come utente root in questo modo:

sudo /bin/kill

N.B. Quando viene richiesta la password, si dovra' digitare quella dell'utente lucaercoli e non root

Per disabilitare la richiesta di password bastera' scrivere questa entry nel file sudoers:

lucaercoli ALL = NOPASSWD: /bin/kill

In questo modo e' possibile permettere all'utente 'lucaercoli' di eseguire il comando 'kill' come utente 'piercarlo':

lucaercoli ALL = (piercarlo) /bin/kill

Con questo comando

sudo -L

viene visualizzata la lista dei comandi concessi all'utente.