Home giubbe.org


×

Attenzione!

Le parole scritte in rosso devono essere sostituite dai vostri parametri.

×

Beta!

Sto lavorando al sito e commetterò tanti errori: potete segnalarmeli all'indirizzo indicato in fondo pagina. Segnalatemi anche eventuali vostre richieste. Grazie. !!!

Sudo e Sleep

Sudo (Superuser Do)

Durante l'installazione di Debian, se non è stata inserita la password di Root, viene installato sudo e l'utente creato è aggiunto al gruppo sudo, così da poter comunque gestire il server.
Possiamo avere molti utenti sudo che gestiscono il server, ma solo root potrà concedere o togliere questi poteri ad ogni singolo utente.
In pratica, sudo è una delega concessa dall'utente root ad un altro utente di eseguire comandi in nome suo. Notare la sufficienza dell'utente root per gestire il server: non è necessario installare sudo.
Sudo ha il suo senso in un ambiente multi-utente, in cui l'utente root delega ad un utente normale poteri suoi. Nessun utente normale dovrà conoscere la password dell'utente root e tutte le volte che un utente eseguirà un comando con sudo, sia il nome utente, sia il comando saranno loggati (registrati), così da permettere a root di identificare eventuali problemi di sicurezza dovuti ad abusi di privilegi.
Dove l'utente normale è unico utente, sudo ha il suo senso nel fatto che l'utente potrà amministrare il server con una sessione temporanea, non permanente, salendo di privilegi con sudo. Le credenziali di sudo sono tenute nella cache per 15 minuti, trascorsi questi, egli dovrà riautenticarsi. Tutto il resto del tempo, egli avrà privilegi normali, con meno rischi per quanto riguarda la sicurezza.
Se vogliamo usare sudo, dobbiamo diventare root, installare il relativo pacchetto, aggiungere l'utente al gruppo sudo , disconnetterlo dal server e rifare il login, perchè è al login che la macchina acquisisce le informazioni sui gruppi.
Per verificare se l'utente che ha fatto il login è parte del gruppo sudo, digitare:

groups

shell utente

In questo caso, vediamo l'utente giubbe non appartenere al gruppo sudo.
Diventiamo root con:
su -

Digitiamo la password di root ed installiamo sudo:

apt install sudo -y

shell debian

Adesso, sempre da root, dobbiamo inserire l'utente nel gruppo sudo:
adduser giubbe sudo

shell debian

Non ci rimane che disconnetterci prima da root e poi da utente:

shell utente

shell utente

Rifacciamo il login.
E vediamo in quali gruppi è l'utente:
groups

shell utente

Stavolta, l'utente giubbe appartiene anche al gruppo sudo.

Il file /etc/sudoers , dove poter fare delle modifiche a sudo, è in sola lettura (anche per root). Per questo si usa visudo.
Ad esempio, qualcuno potrebbe preferire non inserire la password dopo il comando sudo. Per fare ciò, da root, apriamo il file /etc/sudoers:

visudo

shell utente

Il file si presenta così:

shell utente

Inseriamo nel file: %sudo ALL=(ALL) NOPASSWD: ALL

shell utente

Qualche altro utente preferirebbe che le sue credenziali siano tenute nella cache più dei 15 minuti prestabiliti, magari 30 minuti. Per fare ciò, inseriamo alla fine del file /etc/sudoers : Defaults:giubbe timestamp_timeout=30

shell utente

Se vogliamo disabilitare il timeout di sudo, inseriamo: Defaults timestamp_timeout=-1
Questo permetterà di usare sudo durante tutta la sessione senza richiesta temporale di reimmettere la password dell'utente (qualsiasi utente, dato che non abbiamo specificato a quale utente applicare la regola) fino al successivo riavvio.

Visudo Timeout


Visudo prevede anche un alternativa per dare ad un utente i privilegi di sudo.
Inseriamo alla fine del file /etc/sudoers: utentesudo ALL=(ALL:ALL) ALL

shell utente

Salviamo con Control + X e confermiamo con Y.

Sleep

Dato che la nostra macchina ha la funzionalità di server, deve stare sempre accesa e non andare mai in ibernazione o sospensione. Per questo, modifichiamo il file /etc/systemd/sleep.conf :
nano /etc/systemd/sleep.conf

shell utente

shell utente

Con il seguente contenuto:
[Sleep]
AllowSuspend=no
AllowHibernation=no
AllowSuspendThenHibernate=no
AllowHybridSleep=no

shell utente

Riavviamo il sistema per applicare le modifiche apportate.
sudo systemctl restart systemd-logind.service