rp
Licéncia
Creative Commons License
Esta obra está bajo una
licencia de Creative Commons.
 Contacto

A.Serra Devecchi
Mail: rpublica
19-Jun-2006
 

/etc/sudoers : Opciones de Configuración (Defaults)


A continuación se relacionarán las distintas  Opciones de Configuración (Defaults) del archivo  /etc/sudoers 

Se presentarán clasificadas en:

I. Booleanas

long_otp_prompt

Valor por defecto : off

Cuando se valida con un esquema One Time Password ( S/Key o OPIE), se utiliza un prompt de dos lineas con el fin de facilitar la operación de "cortar y pegar" a una ventana local.

ignore_dot

Valor por defecto : off

Si se activa, sudo ignorará el punto  .  (Directorio actual) en la variable de entorno PATH. La variable PATH en sí no es modificada.
Aún siendo posible configurar  ignore_dot en sudoers, normalmente su valor no es utilizado..

mail_always

Valor por defecto : off

Advierte, mediante un mensaje de correo, al  mailto user , cada vez que un usuario utiliza sudo.

mail_badpass

Valor por defecto : on

Advierte, mediante un mensaje de correo, al  mailto user , cada vez que un usuario ,al arrancar sudo, no entra el password correcto.

mail_no_user

Valor por defecto : on

Activada, se enviará un mensaje al  mailto user , advirtiéndole cada vez que sudo es invocado por un usuario que no está en el archivo sudoers.

mail_no_host

Valor por defecto : off

Activada, se enviará un mensaje de correo al  mailto user , cada vez que sudo es invocado por un usuario existente en sudoers, pero no habilitado para ejecutar comandos en el host corriente.

mail_no_perms

Valor por defecto : off

Activada, se enviará un mensaje de correo al  mailto user , cada vez que un usuario autorizado a ejecutar sudo intente la ejecución de un comando que, o bién no está relacionado en su configuración del archivo sudoers o bién su ejecución le está explicitamente denegada.

tty_tickets

Valor por defecto : off

Si se activa,los usuarios podran identificarse por tty. Normalmente, sudo utiliza un directorio en el dir ticket con el mismo nombre del usuario que lo esta ejecutando. Con la activación de esta opción sudo usará un archivo, nombrado para el tty en el que se encuentra el usuario, en el citado directorio.

authenticate

Valor por defecto : on

Activado, los usuarios deben identificarse via password (u otro medio de identificación) antes de poder ejecutar comandos. Esta configuración puede modificarse mediante las etiquetas de comando  PASSWD  y  NOPASSWD .

root_sudo

Valor por defecto : @root_sudo@

Activada, root puede ejecutar sudo. Este parámetro ha "sobrevivido" por razones puramente históricas.

log_host

Valor por defecto : off

Activada, el hostname será guardado en el sudo log file ( no syslog).

log_year

Valor por defecto : off

Activándola, el año, en formato de cuatro dígitos, será guardado en el sudo log file ( no syslog).

shell_noargs

Valor por defecto : off

Activada hace que cuando se invoca sudo sin argumentos, actue como  sudo -s  ; es decir, ejecuta una shell como root.

set_home

Valor por defecto : off

Activada, da lugar a que cuando se invoca  sudo -s , -s implique, efectivamente, -H : La variable de entorno HOME sera asignada al directorio home del "usuario privilegiado"(*) ( el cual es root, salvo que se haya utilizado la opción -u)

always_set_home

Valor por defecto : off

Activada, provoca el mismo comportamiento que  set_home ,pero con la sola invocación de sudo. No es necesaria la opción -s . Ello implica que siempre será empleada la opción -H.

path_info

Valor por defecto : off

Normalmente, sudo adverirá al usuario cuando no encuentre un comando en su variable de entorno PATH. Algunos sitios pueden considerar conveniente desactivar esta función . La desventaja de esta desactivación es que cuando un comando no pueda ser ejecutado debido a que, simplemente, no se encuentre en el PATH del usuario,la advertencia de sudo al usuario será de que no puede ejecutar el comando en cuestón por no estar autorizado a hacerlo, lo cual puede ocasionar confusión.

perserve_groups

Valor por defecto : off

Por defecto, sudo inicializará el group vector de la lista de grupos en la que está el usuario. Cuando se activa este parámetro, el group vector del usuario se deja inalterado.Sin embargo, el real y efectivo ID del grupo permanecen configurados para operar con el "usuario privilegiado"(*).

fqdn

Valor por defecto : off

Activarla si se desea utilizar los nombres completos de los hosts en el archivo sudoers ( p.e. en lugar de myhost , myhost.mydomain.edu). Una vez activada, pueden utilizarse tanto nombres completos como nombres abreviados. Debemos tener en cuenta que debemos utilizar los nombres de host exactamente tal como los conoce el DNS. Si el hostname de la máquina ( el que aparece tras ejecutar el comando   hostname  ) es el nombre completo, no se necesita activar   fgdn .

insults

Valor por defecto : off

Activándola, sudo insultará a los usuarios cuando intenten entrar con un password incorrecto.

requiretty

Valor por defecto : off

Activándola, sudo solo se ejecutará cuando el usuario esté en una tty real.

env_editor

Valor por defecto : off

Si se activa, visudo utilizará los valores de las variables de entorno EDITOR y VISUAL, antes de ir a parar a la lista de editores por defecto. Esto puede crear problemas en la seguridad ya que , de hecho, se permite al usuario ejecutar un comandos como root, si necesidad de entrar como tal. Una alternativa segura es colocar una lista de editores, separados por  :  en la variable  editor . En este caso, visudo sólo utilizará EDITOR o VISUAL si tienen valores especificados en  editor .

rootpw

Valor por defecto : off

Si se activa, al invocar sudo este requerirá la contraseña de root en lugar de la contraseña del usuario que lo ha invocado.

runaspw

Valor por defecto : off

Si se activa, sudo requerirá la contraseña del usuario definido en la opción  runas_default . en lugar de la contraseña del usuario que ha invocado sudo.

targetpw

Valor por defecto : off

Si se activa, sudo requerirá la contraseña del usuario especificado por la opción -u ( por defecto, root) en lugar de la contraseña del usuario que ha activado sudo. Nótese que esto excluye la utilización, como argumento de -u , de una uid no listada en la base de datos de password.

set_logname

Normalmente, sudo "usará" las variables de entorno LOGNAME y USER del "usuario privilegiado"(*) (normalmente root, salvo utilización de la opción -u) . Sin embargo, como algunos programas utilizan LOGNAME para determinar la real identidad del usuario, puede ser conveniente cambiar este modo de operar. Ello se consigue desactivando la opción set_logname.

stay_setuid

Normalmente, cuando sudo ejecuta un comando, el real y efectivo UID usado es el del "usuario privilegiado"(*) (por defecto root). stay_setuid  cambia el comportamiento descrito, de modo que el UID real es mantenido como el UID del usuario que ha invocado sudo.

env_reset

Si se activa, sudo reiniciará el entorno con el fin de contener solo las siguientes variables: HOME, LOGNAME, PATH, SHELL,TERM y USER ( además de las variables SUDO_ ). De todas ellas, solo TERM es copiada inalterada desde el antiguo entorno. Las otras variables son puestas en sus valores por defecto. Si se compiló sudo con la opción SECURE_PATH, sus valores serán utilizados por la variable PATH. Las otras variables pueden ser preservadas con la opción  env_keep .

use_loginclass

Valor por defecto : off

Si se activa, sudo aplicará los parámetros login class especificados para el "usuario privilegiado"(*), si existen. Solo es aplicable si se configurá sudo con la opción  --with-logincap  .

noexec

Valor por defecto : off

Si se activa, todos los comandos que se ejecuten via sudo se comportarán como si estuvieran marcados con la etiqueta  NOEXEC , salvo aquellos anulados por una etiqueta  EXEC 

ignore_local_sudoers

Valor por defecto : off

Si se activa via LDAP, el analisis de  /etc/sudoers  será obviado. Ello dificulta que operadores no autorizados intenten añadir o modificar reglas en  /etc/sudoers . Con esta opción activada,  /etc/sudoers  no necesita siquiera "existir".


II. Enteros


passwd_tries

Valor por defecto : 3

Especifica el número de veces que un usuario puede intentar entrar su contraseña antes que sudo considere el fallo definitivo y se cierre..


III. Enteros que pueden usarse en contextos booleanos


loglinelen

Valor por defecto : 80

Establece el número de caracteres por linea del archivo log.
No opera en el archivo syslog. Sólo en el log. Usar 0 o negate para desactivar el ajuste automático de lineas.

timestamp_timeout

Valor por defecto : 5

Con esta opción se establecen los minutos que deben pasar antes que sudo vuelva a requerir la introducción de la contraseña.
Si se establece un valor igual a 0 sudo requerirá la introducción de la contraseña para cada operación.
Si el valor que se dá es menor que 0, no habrá tiempo de caducidad de la contraseña introducida al inicio de la sesión. Esto puede ser utilizado para permitir a los usuarios establecer, via  sudo -v , su propio periodo de vigencia del password, o bien para eliminarlo, via  sudo -k .

passwd_timeout

Valor por defecto : 5

Establece ( en minutos) el tiempo de espera de introducción de contraseña. Si se establece en 0 se elimina el tiempo de espera de introducción de contraseña.

umask

Valor por defecto : 022

Se utiliza para establecer la umask a usar durantela ejecución de un comando.
Negando esta opción (!) o estableciéndola en 0777 se conservará la umask del usuario.


IV. Cadenas


mailsub

Valor por defecto : ***SECURITY information for %h ***

Establece el subject del mail eviado al  mailto user . %h tomará como valor el hostname de la máquina.

badpass_message

Valor por defecto : Sorry, try again

Establece el mensaje a mostrar cuando un usuario intente entrar con un password incorrecto. La opción por defecto operará siempre y cuando no se encuentre activado  insults .

timestampdir

Valor por defecto : /var/run/sudo

Establece el directorio en el cual sudo almacenará sus archivos timestamp.

timestampowner

Valor por defecto : root

Establece el propietario del directorio timestamp y de los archivos que contenga.

passprompt

Valor por defecto : Password:

Establece el promtp a utilizar por defecto cuando se requiera la introducción del password. Puede ser sustituido via  sudo -p  o através de la variable de entorno SUDO_PROMPT.
Soporta las siguientes opciones:

%u
Muestra el nombre_usuario del usuario que invoca sudo.
%U
Muestra el nombre_usuario del usuario en cuyo nombre se ejecutará el comando (por defecto: root).
%h
Muestra el hostname local, sin el nombre de dominio.
%H
Muestra el hostname local, incluyendo el nombre de dominio ( on, si  fgdn se encuentra activada).
%%
Muestra el signo %.

runas_default

Valor por defecto : root

Establece el usuario por defecto para la ejecución de comandos, como si la opción -u no estuviera especificada en la linea de comandos.
Obsérvad que si se quiere utilizar runas_default  , debe hacerse antes de cualquier especificación de  Runas_Alias .

syslog_goodpri

Valor por defecto : to notice

Establece la prioridad syslog a utilizar cuando el usuario se identifica correctamente.

syslog_badpri

Valor por defecto : to alert

Establece la prioridad syslog a utilizar cuando el usuario se identifica incorrectamente.

editor

Valor por defecto : el path hacia el editor vi del sistema

Mediante esta opción se puede establecer una lista de editores, separados por  : , susceptibles de ser usados por visudo.
visudo eligirá, si es posible, el editor que establezca la variable de entorno del usuario USER, o el primer editor de la lista que sea ejecutable.

noexec_file

Valor por defecto : /usr/local/libexec/sudo_noexec.so

Establece el path a bibliotecas compartidas que conienen versiones de funciones  execv()  execve()  y  fexecve()  que retornan error.
Se utiliza para implementar la funcionalidad noexec en sistemas que soportan LD_PRELOAD o equivalentes.


V. Cadenas que pueden usarse en un contexto booleano.


lecture

Valor por defecto : on

Esta opción establece si debe mostrarse un corto mensaje junto con el prompt de la contraseña.
Los valores posibles son:

never
Ningun mensaje.
once
Solo muestra el mensaje la primera vez que el usuario ejecuta sudo.
always
Muestra el mensaje cada vez que el usuario ejecuta sudo.

lecture_file

Mediante esta opción se establece el path a un archivo que contiene un mensaje alternativo a mostrar en lugar del estandar, en caso de que exista éste último.

logfile

Mediante esta opción se establece el path al log file de sudo ( no al syslog logfile). Configurando un path,se establece en on el loggin a un archivo; negando la opción ( con !) se conmuta a off.

syslog

Valor por defecto : local2

Esta opción constituye una facilidad si se utiliza syslog para el loggin. Negándola(!) se desactiva syslog para loggin.

mailerpath

Mediante esta opción se establece el path al programa de mail utilizado para el envio de mensajes de advertencia.
Los valores por defecto se establecen en el momento de la configuración.

mailerflags

Valor por defecto : -f

Opciones a utilizar cuando se invoca el programa de correo.

mailto

Valor por defecto : root

Mediante esta opción se establece la dirección ( destinatario) a la que se remitián los mensajes de advertencia y error. Dicha dirección debe encerrarse entre dobles-comillas (" ") con el fin de protegerla de la interpretación que sudo hace del caracter @.

exempt_group

Los usuarios de este grupo estan exentos de contraseña y de requerimientos de PATH. No tiene valores por defecto.

verifypw

Valor por defecto : all

Mediante esta opción se controlará cuando se requerira contraseña cuando un usuario ejecute  sudo -v .
Los posibles valores son:

all
Todas las entradas de usuario en sudoers, para el host corriente, deben tener establecido el  NOPASSWD  para que no se le requiera contraseña.
any
Al menos una de las entradas de usuario en sudoers, para el host corriente,debe tener establecido el  NOPASSWD  para evitar tener que usar la contraseña.
never
El usuario no necesitará nunca usar una contraseña cuando ejecute  sudo -v .
always
El usuario deberá siempre usar una contraseña cuando ejecute  sudo -v 

listpw

Valor por defecto : any

Mediante esta opción se controlará si será preciso o no la utilización de una contraseña cuando un usuario ejecute  sudo -l .
Los posibles valores son los mismos que en Variables de entorno a mantener cuando al opción [env_check] está en vigor. .


VI. Listas que pueden usarse en un contexto booleano.


env_check

Las variables de entorno a eliminar del entorno del usuario si el valor de la variable contiene los caracteres % o  / .
El argumento puede ser una lista de valores separados por espacios o encerrados entre dobles-comillas (" ").
La lista puede ser reeemplazada, incrementada o disminuida usando los operadores  = ,  +=  -= , o  !  respectivamente.
La lista, por defecto, de variables de entorno a comprobar es mostrada cuando se ejecuta  sudo -V  como root.

env_delete

Las variables de entorno a eliminar del entorno del usuario.
El argumento puede ser una lista de valores separados por espacios o encerrados entre dobles-comillas (" ").
La lista puede ser reeemplazada, incrementada o disminuida usando los operadores  = ,  +=  -= , o  !  respectivamente.
La lista, por defecto, de variables de entorno a comprobar es mostrada cuando se ejecuta  sudo -V  como root.

env_keep

Variables de entorno a mantener cuando al opción  env_check  está en vigor.
El argumento puede ser una lista de valores separados por espacios o encerrados entre dobles-comillas (" ").
La lista puede ser reeemplazada, incrementada o disminuida usando los operadores  = ,  +=  -= , o  !  respectivamente.
Esta lista no tiene elementos por defecto.

VII.Bibliografia

Sudoers Manual

Inicio Página
Indice de Opciones > Configuración de /etc/sudoers > | Opciones de Configuración