Modifica timeout password sudo predefinito


18

Quando corro sudoe inserisco la mia password, una successiva chiamata sudoentro pochi minuti non avrà bisogno di reinserire la password.

Come posso modificare il timeout predefinito per richiedere nuovamente la password?

Risposte:


28

man sudoers dice:

Una volta che un utente è stato autenticato, [...] l'utente può utilizzare sudo senza password per un breve periodo di tempo (5 minuti a meno che non venga ignorato timestamp_timeoutdall'opzione).

Per modificare il timeout, eseguire sudo visudoe aggiungere la riga:

Defaults        timestamp_timeout=30

dov'è 30il nuovo timeout in minuti.

Per richiedere sempre una password, impostare su 0. Per impostare un timeout infinito, impostare il valore su negativo.

Per disabilitare totalmente la richiesta di una password per l'utente ravi:

Defaults:ravi      !authenticate

3

Devi modificare / etc / sudoers. Per coloro che non usano vi, è necessario modificare questo file (su alcune versioni di Linux) con un comando terminale come questo:

sudo EDITOR=gedit visudo

Quindi aggiungere o modificare timestamp_timeout:

# After authenticating, this is the amount of time after which
# sudo will prompt for a password again in the same terminal
Defaults    timestamp_timeout=30

Il modo giusto ™ per evitare vi, sarebbe impostare la $EDITORvariabile su qualcos'altro. L'idea visudonon è quella di chiamare vi, ma di impedire alle persone di bloccare se stesse (e chiunque altro dipenda sudo) dal proprio rootaccount 1) copiando /etc/sudoersin un file temporaneo, 2) chiamando $EDITORquesto file, 3) eseguendo un controllo di sintassi su questo file e 4) eventualmente sostituendo /etc/sudoerscon la versione aggiornata.
Andreas Wiese,

visudoLa documentazione dice questo: "Normalmente, visudo non onora le variabili di ambiente VISUAL o EDITOR a meno che non contengano un editor nell'elenco di editor sopra menzionato" - e l'elenco di default è solo vi, mentre si dice che qualsiasi editor sia considerato un buco nella sicurezza. Ma posso confermare che sudo EDITOR=gedit visudofunziona sulla mia scatola CentOS 7.2. Il controllo della sintassi che fornisce è sicuramente una buona cosa.
Qwertie,

Ah, sì, grazie per il (ulteriore) chiarimento, mi sono perso. Ma IIRC è anche possibile modificare l'editor predefinito in sudoerssé - solo per la cronaca. Sono sicuro che il controllo della sintassi lo dirà. ;)
Andreas Wiese,

3

sudo visudo consiste nel modificare direttamente il file di configurazione predefinito, ma nel file ha suggerimenti di seguito

Si prega di considerare l'aggiunta di contenuto locale in /etc/sudoers.d/ invece di modificare direttamente questo file.

Quindi, il modo migliore è

cd /etc/sudoers.d
sudo visudo -f user_name

Aggiungi il contenuto

Defaults timestamp_timeout=(number)

(number)è il nuovo timeout in minuti .

timestamp_timeout (man 5 sudoers)

Numero di minuti che possono trascorrere prima che sudo richieda nuovamente un passwd. Il timeout può includere una componente frazionaria se la granularità minima è insufficiente, ad esempio 2.5. Il valore predefinito è 15. Impostare questo su 0 per richiedere sempre una password. Se impostato su un valore inferiore a 0, il timestamp dell'utente non scadrà fino al riavvio del sistema. Questo può essere usato per consentire agli utenti di creare o eliminare i propri timestamp rispettivamente tramite "sudo -v" e "sudo -k".

Salvare il file premendo Ctrl+ Oe premere enter, quindi uscire utilizzando Ctrl+ X.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.