En Slice of Linux, ya hablamos hace algún tiempo de cómo reducir, o anular, el tiempo que la consola recuerda el contraseña que le hayamos dado al comando sudo. Esto es muy útil cuando estamos en un entorno poco confiable y tememos que si abandonamos unos minutos nuestro sistema, pueda ser usado con privilegios de root por alguien de nuestro alrededor. Sin embargo, la mayoría de las veces este tipo de precauciones no son necesarias. Es más, podríamos permitirnos el pequeño lujo de que, una vez escrita la contraseña de administración, esta sea recordada hasta que se cierre la ventana de Consola, pero … ¿cómo se puede conseguir este comportamiento?
En realidad, la respuesta es muy sencilla. Si quieres comprobarlo, sólo tienes que seguir leyendo …
Para comenzar, sólo tienes que abrir una ventana de Consola (Aplicaciones > Accesorios > Terminal) y escribir lo siguiente:
sudo visudo
En Ubuntu, visudo utiliza el editor de textos nano, y lo que hace es editar el archivo /etc/sudoers.tmp
Cuando se abra el editor, busca la línea que tiene el siguiente contenido:
Defaults env_reset
… y cámbiala por algo así:
Defaults env_reset , timestamp_timeout = -1
En realidad, con la información que te habíamos dado en el artículo anterior podrías haber conseguido un comportamiento parecido cambiando los 2 minutos que te recomendábamos allí por un número bastante más alto, pero creo que esta solución es más elegante ¿no crees?
Para guardar los cambios, sólo tienes que pulsar Ctrl + X.
Espero que te resulte útil.
Imagen de cabecera: hydroxygen_iconset


Incluso podemos evitar que pida siempre la contraseña:
La línea %admin ALL = (ALL) ALL
sustituirla por %admin ALL = (ALL) NOPASSWD: ALL
SalU-2!
La contraseña que pide sudo, no es la contraseña de root :s
Es la contraseña del usuario.
salU
Si lo que quieres es estar realizando tareas administrativas, para las cuales necesitas sudo, pues simplemente logueate como root y no hace falta modificar nada.
Se puede hacer con
$ su
y metiendo la contraseña de root
o con
$ sudo /bin/bash
con esto se te abrira un bash como root y no necesitas modificar fichero, luego simplemente te sales del terminal y todo continuao como siempre
$ sudo -i
Te lleva directo a una shell de root (pidiendote tu password si no has tocado el visudo).
Tanto el sudo -i, el NOPASSWD en el visudo y el timestamp_timeout = -1 puede resultar peligroso de cara a la seguridad del sistema, ya que si nos ausentamos y dejamos la terminal abierta damos el control completo del sistema a cualquiera que se siente delante.
Recordad que un CTRL-D a tiempo vale mas que una reinstalción.
Esto puede resultar muy cómodo pero es casi lo mismo que un suicidio informático. Les recomiendo leer este artículo (http://usemoslinux.blogspot.com/2010/06/por-que-linux-es-mas-seguro-que-windows.html) para leer sobre por qué Linux es más seguro que Windows.
Hola,
Los métodos NOPASSWD, Timestamp_timeout=-1 y !authenticate en sudoers, me funcionan perfectamente en el 9.04 (ubuntu jaunty jackalope).
Pero estoy intentando hacer lo mismo en otro ordenador, donde acabo de instalar ubuntu lucid lince (10.04, 64 bits), y parece que pase olímpicamente del fichero sudoers.
Tengo que introducir constantemente la contraseña, modifique como lo haga el sudoers. Cuando realizo un determinado tipo de operación (ej., instalación de programas desde el centro soft), una llave en la barra de menús me indica que está ocurriendo un ‘evento’, dura unos 5 minutos, y mientras está activo el evento, puedo instalar mas aplicaciones. Pero si quiero desinstalar, me pide de nuevo la passwd, y puedo desinstalar sin volver a recordar la passwd durante almenos ese tiempo. Si edito la conexión wifi, me pide la passwd la primera vez, y puedo reeditar durante ese periodo.
Esos 5 min no tienen nada que ver con Timestamp_timeout, pues lo he puesto incluso =0 y ni puñetero caso.
¿Le ocurre a alguien mas? ¿Alguien sabe que fichero inhibe las especificaciones del sudoers?¿Hay solución?