¿Con qué frecuencia se le pide a la contraseña los comandos sudo? ¿Dónde puedo configurarlo?

24

Ejecuto bastantes sudocomandos.

Noté que si ejecuto uno y luego otro dentro de unos minutos, la segunda vez no recibo el mensaje:

[sudo] contraseña para my_username:

pero lo entiendo cuando hay más tiempo entre la ejecución de los dos comandos.

¿En qué período de tiempo no aparece el mensaje? ¿Cómo podemos verificarlo / actualizarlo?

fedorqui
fuente
1
sudo visudo, entonces la línea% sudo debe ser% sudo ALL = (ALL: ALL) NOPASSWD: ALL, no le pedirá ninguna contraseña cuando escriba sudo any-stuff
Qasim
3
Esto (NOPASSWD: ALL) es una sugerencia muy peligrosa. Hará que su instalación no sea segura.
Sri

Respuestas:

31

El tiempo de espera predeterminado sudoes de 15 minutos; es decir, sudorecordará su contraseña durante 15 minutos de forma predeterminada.

Puede modificar este tiempo de espera predeterminado agregando una cadena en el archivo /etc/sudoers. Sin embargo, no modifica el archivo directamente, sino que usa el comando sudo visudo.

Entonces, escriba sudo visudouna terminal. Esto abrirá el archivo (en realidad, temporal) para que lo editemos, utilizando su editor preferido.

Nota: si está usando visudopor primera vez, se le debe preguntar qué editor le gustaría usar, así que elija su editor. No hay un editor "mejor", pero prefiero nano. Si ya has probado visudoy ha escogido un editor antes, pero desea utilizar otro editor, por el momento, se puede hacer sudo EDITOR=vi visudouso vi, o cambiarlo a nanoutilizar nano. Si desea cambiar permanentemente su editor preferido, hágalo sudo update-alternatives --config editor.

Busque esta línea:

Defaults    env_reset

Y agregue (con una coma) al final, donde X es el tiempo que desea establecer en minutos.timestamp_timeout=X

Entonces su línea debería verse así, como un ejemplo:

Defaults    env_reset,timestamp_timeout=5

Si especifica 0, siempre se le pedirá la contraseña. Si especifica un valor negativo, el tiempo de espera nunca caducará.

Una vez hecho, guardar y salir.

Fuente: RootSudoTimeout

Alaa Ali
fuente
Gracias, @Alaa, es una respuesta buena y útil. Solo como nota al margen, la Ctrl + xparte no siempre coincide con el editor, por ejemplo vi(en mi caso).
fedorqui
Por cierto, cometí un gran error al agregar una nueva línea con solo en Default timestamp-0lugar de la que tiene env_reset. Rompió mi archivo de sudoers. ¡Tuve que usar askubuntu.com/a/73872/143251 para resolverlo!
fedorqui
@ fedorqui: Esa es exactamente la razón por la que debes usar visudo (como recomienda Alaa) en lugar de editar el archivo directamente. La primera sintaxis verificará el archivo por usted, evitando que se bloquee de sudo.
Plutor
Sí, sí, eso es lo que hice @Plutor. Pero vies el editor que he definido visudo. El problema es que guardé el archivo aunque recibí un mensaje de advertencia al cerrarlo. Mi culpa, obviamente.
fedorqui
1
@ fedorqui, sí, quise eliminar esa parte porque cualquiera podría estar usando un editor diferente. He editado mi respuesta para no ser específico del editor.
Alaa Ali
3

Vea esta publicación aquí: http://ubuntuforums.org/showthread.php?p=116697#post116697

Edite el /etc/sudoersarchivo, use el sudo visudocomando por seguridad. Agregue timestamp_timeout=0a la línea que comienza Defaultsa preguntar cada vez, o X positivo para un retraso de X minutos.

Tuminoide
fuente
1
Tengo que registrarme en el foro para verlo. Mientras tanto, ¿podría indicar amablemente qué archivo debo editar con timestamp_timeout=0línea?
fedorqui
OK, respuesta fija.
Tuminoide
¡Hizo el truco! Aceptaré la otra respuesta ya que tiene una explicación más completa e incluye la env_resetreferencia, que es importante. De todos modos, su respuesta también fue muy útil, ¡así que gracias!
fedorqui
0

No estoy seguro si esto expira o no, pero podría intentar

sudo su

Le pedirá la contraseña y luego todos los comandos se ejecutarán como sudo.

Mihai
fuente
1
Sí, @ Rat2000, pero quiero seguir usando mi usuario y no root. Creo que es más seguro De todos modos, gracias por el consejo.
fedorqui
3
sudo su te hace convertirte en root. Su solicitud debería ser root @ yourpc. Tenga en cuenta que la raíz tiene su propio .bashrc, por lo que sus alias no funcionarán. Tenga en cuenta también que la raíz puede dañar gravemente el sistema, ¡así que tenga cuidado!
Speter