Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

Configuración y uso de sudo.

Autor: Joel Barrios Dueñas
Correo electrónico: darkshram en gmail punto com
Sitio de Red: http://www.alcancelibre.org/
Jabber ID: darkshram@jabber.org

Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1

© 1999-2016 Joel Barrios Dueñas. Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales (incluyendo su publicación, a través de cualquier medio, por entidades con fines de lucro). c) Si altera o transforma esta obra o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector, hace mal uso de éstos.

Introducción.

Historia.

Sudo fue inicialmente concebido en 1980 por Bob Coggeshall y Cliff Spencer del Departamento de Ciencia Computacional en SUNY (State University of New York o Universidad Estatal de Nueva York), en Buffalo.

En 1985 se publicó una versión mejorada acreditada a Phil Betchel, Cliff Spencer, Gretchen Phillips, John LoVerso y Don Gworek en el grupo de noticias net.sources. Garth Snyder publicó otra versión mejorada en el verano de 1986 y durante los siguientes cinco años fue mantenido con la colaboración de muchas personas, incluyendo Bob Coggeshall, Bob Manchek y Trent Hein.

Dave Hieb y Jeff Nieusma escribieron en 1991 una versión mejorada del formato para el archivo /etc/sudoers, bajo contrato con la firma consultora The Root Group, versión que posteriormente fue publicada bajo los términos de la Licencia Pública General de GNU (GNU/GPL).

Desde 1996 el proyecto es mantenido activamente por Todd Miller, con la colaboración de Chris Jepeway y Aaron Spangler y actualmente se distribuye bajo los términos de una licencia tipo BSD.

¿Qué es sudo?

Sudo (Superuser Do) es una herramienta de sistema que permite a los usuarios realizar la ejecución como super-usuario u otro usuario de acuerdo a como se especifique en el archivo /etc/sudoers, donde se determina quien está autorizado. Los números de identidad de usuario y de grupo (UID y GID) reales y efectivas se establecen para igualar a aquellas del usuario objetivo como esté especificado en el archivo /etc/passwd.

Por seguridad de modo predeterminado sudo requiere que los usuarios regulares autorizados se autentiquen usando su propia contraseña nunca con la de root. También es obligatorio el acceso desde una terminal (TTY) para poder ejecutar sudo y si un usuario sin autorización lo ejecuta, se registrará la actividad en la bitácora de sistema (a través de syslogd) y se enviará un mensaje de correo electrónico al administrador del sistema (root).

El manual de información del formato del archivo /etc/sudoers se puede consultar ejecutando lo siguiente:

man 5 sudoers

El manual de información de sudo se puede consultar ejecutando lo siguiente:

man 8 sudo

El manual de información de visudo se puede consultar ejecutando lo siguiente:

man 8 visudo

Equipamiento lógico necesario.

Instalación en CentOS, Fedora™ y Red Hat™ Enterprise Linux.

Ejecute lo siguiente para instalar el paquete sudo:

yum -y install sudo

Instalación en openSUSE™ y SUSE™ Linux Enterprise.

Ejecute lo siguiente para instalar el paquete sudo:

yast -i sudo

Existe un módulo de sudo para YaST, pero tiene un soporte muy limitado en cuanto a funciones. Permite editar usuarios, crear y administrar las listas de control de acceso, pero carece de soporte para funciones como NOEXEC en las reglas de control de acceso y negaciones dentro de las listas de control de acceso.

Módulo sudo de YaST, en modo texto.
Módulo sudo de YaST, en modo texto.

Ejecute lo siguiente para instalar el módulo sudo para YaST:

yast -i yast2-sudo

Archivo /etc/sudoers

El archivo /etc/sudoers se edita con visudo, herramienta que a través de vi permite realizar cambios y verificar sintaxis y errores. Si se intenta modificar directamente /etc/sudoers, éste tendrá permisos de sólo lectura.

La sintaxis básica de una lista de control de acceso sería:

XXXX_Alias NOMBRELISTA = elemento1, elemento2, elemento3

La sintaxis básica de una regla de control de acceso sería:

[usuario, %grupo, NOMBRELISTA] [anfitrión] = (id de usuario a usar) programas

Se pueden definir Aliases y reglas. Los aliases permiten definir listas de programas, listas de usuarios, listas de anfitriones o bien listas de identidades de usuarios para ejecutar programas.

Cmnd_Alias.

Se utiliza para definir listas de programas a utilizar con sudo y/o excluir su ejecución con sudo. Ejemplo:

Cmnd_Alias PROGRAMAS4 = /usr/bin/systemctl httpd reload, /usr/bin/vim /etc/httpd/conf.d/variables.conf, /usr/bin/vim /etc/php.ini

Lo anterior define una lista de programas que podrían utilizarse para hacer que el servicio httpd vuelva a leer su configuración, modificar los archivo /etc/httpd/conf.d/variables.conf y /etc/php.ini.

fulano ALL = PROGRAMAS4

Lo anterior define que el usuario fulano puede ejecutar los programas de la lista PROGRAMAS4 desde cualquier anfitrión.

También se pueden definir programas prohibidos junto con programas permitidos. Por ejemplo:

Cmnd_alias ALTACUENTAS = /usr/sbin/useradd, /usr/bin/passwd *, !/usr/bin/passwd root

fulano ALL = (ALL) ALTACUENTAS

Lo anterior define que fulano puede ejecutar useradd con cualquier opción y argumentos y ejecutar passwd con cualquier argumento, pero tendrá prohibido ejecutar éste utilizando root como argumento, es decir tendrá prohibido cambiar la contraseña de root.

En el siguiente ejemplo, el usuario fulano podría utilizar virtualmente cualquier programa del sistema, excepto passwd con root como argumento y ejecutar bash, userdel, usermod y su.

Cmnd_alias PROHIBIDOS = !/bin/su, !/bin/bash, !/usr/sbin/usermod, !/usr/sbin/userdel, !/usr/bin/passwd root

fulano ALL = (ALL) ALL, PROHIBIDOS

User_Alias.

Se utiliza para definir listas de usuarios y/o grupos que podrán utilizar sudo y/o aquellos que tendrán prohibido utilizarlo. Ejemplo:

User_Alias WEBADMINS = fulano, mengano, zutano

Lo anterior define una lista denominada WEBADMINS, integrada por los usuarios fulano, mengano y zutano.

WEBADMINS ALL = /usr/bin/vim

La regla anterior define que los usuarios que conforman la lista WEBADMINS pueden ejecutar vim desde cualquier anfitrión.

También es posible definir grupos a los cuales pertenecen los usuarios del sistema. Ejemplo:

User_Alias ADMINS = %wheel, !pepe

Lo anterior define una lista denominada ADMINS, integrada por los usuarios que pertenezcan al grupo de sistema denominado wheel, excluyendo el usuario denominado pepe.

ADMINS ALL = /usr/bin/vim

La regla anterior define que los usuarios que conforman la lista ADMINS, es decir todos los miembros del grupo de sistena denominado wheel, excepto el usuario denominado pepe, pueden ejecutar vim desde cualquier anfitrión.

Host_Alias.

Se utiliza para definir listas de anfitriones desde los cuales se tendrá permitido utilizar sudo o bien desde los cuales se tendrá prohibido utilizarlo. Ejemplo:

Host_Alias WEBHOSTS = 192.168.70.25, 192.168.70.26, 192.168.70.23

Lo anterior define que la lista WEBHOSTS está integrada por las 3 direcciones IP listadas anteriormente. Si además se añade la siguiente regla:

WEBADMINS WEBHOSTS =  ADMINHTTPD

Lo anterior define que los usuarios de la lista WEBADMINS pueden utilizar los programas listados en ADMINHTTPD solamente si están conectados desde las direcciones IP listadas en WEBHOSTS.

Runas_Alias.

Se utiliza para definir listas de identidades permitidas para utilizar sudo o bien aquellas que estarán prohibido utilizar. Ejemplo:

Si por ejemplo se quisiera que los usuarios de la lista WEBADMINS pudieran además ejecutar ls, rm, chmod, cp, mv, mkdir, touch y vim como el usuarios juan, pedro y hugo, se requiere definir una lista para estos programas y otra para los aliases de usuarios alternos y la regla correspondiente.

User_Alias WEBADMINS = fulano, mengano, zutano

Runas_Alias WEBUSERS1 = juan, pedro, hugo

Cmnd_Alias PROGRAMAS1 = /bin/ls, /bin/rm, /usr/bin/chmod, /bin/cp, /bin/mv, /bin/mkdir, /bin/touch, /usr/bin/passwd [A-z]*, !/usr/bin/passwd root

WEBADMINS WEBHOSTS = (WEBUSERS1) PROGRAMAS3

Lo anterior permite a los usuarios definidos en WEBADMINS ( es decir fulano, mengano y zutano), utilizar los programas definidos en PROGRAMAS1 (es decir podrán utilizar ls, rm, chmod, cp, mv, mkdir, touch, vim y passwd, pero para el este último estará prohibido cambiar la contraseña de root), identificándose como los usuarios definidos en la lista WEBUSERS1 (juan, pedro y hugo), sólo si sudo se ejecuta desde los anfitriones con las direcciones IP listadas en WEBHOSTS (192.168.70.25, 192.168.70.26, 192.168.70.23).

Al momento de establecer las reglas, es posible especificar el permiso de ejecución de ciertos programas con uno o más usuarios y el de otros programas con otros usuarios distintos.

User_Alias WEBADMINS = fulano, mengano, zutano

Runas_Alias WEBUSERS1 = juan, pedro, hugo

Runas_Alias WEBUSERS2 = mario, beto, paco

Cmnd_Alias PROGRAMAS1 = /bin/ls, /bin/rm, /usr/bin/chmod, /bin/cp, /bin/mv, /bin/mkdir, /bin/touch, /usr/bin/passwd [A-z]*, !/usr/bin/passwd root

Cmnd_Alias PROGRAMAS2 = /usr/bin/vim, /bin/cat, /usr/bin/less

WEBADMINS WEBHOSTS = (WEBUSERS1) PROGRAMAS1 (WEBUSERS2) PROGRAMAS1

Lo anterior establece que los miembros de la lista WEBADMINS (fulano, mengano y zutano) pueden ejecutar desde lo anfitriones definidos en WEBHOSTS los programas definidos en la lista PROGRAMAS1, pero sólo adoptando las identidades de juan, pedro y hugo y los programas definidos en la lista PROGRAMAS2, pero sólo pueden ser ejecutados adoptando las identidades de mario, beto y paco.

Basado sobre el ejemplo anterior, estaría permitido ejecutar algo como lo siguiente:

sudo -u juan mkdir /home/juan/public_html/images

Pero estaría prohibido ejecutar lo siguiente, porque sólo se permite ejecutar /bin/cp con las identidades juan, pedro y hugo:

sudo -u mario cp -r /home/mario/public_html/images2/* /home/mario/public_html/images2/

Candados de seguridad.

Algunos programas, como el caso de less, vi, vim y more, permiten ejecutar otros programas desde el intérprete de mandatos —lo que se conoce como Shell Escape o escape al intérprete de mandatos. En estos casos se puede utilizar NOEXEC para impedir que algunos programas permitan la ejecución de otros programas con privilegios. Ejemplo:

fulano ALL = (ALL) ALL NOEXEC: /bin/vi, /usr/bin/less, /usr/bin/vim, /bin/more

Lo anterior permitiría al usuario fulano poder editar o visualizar con privilegios cualquier archivo del sistema ejecutando vim y more, pero deshabilita la posibilidad de poder ejecutar otros programas con privilegios desde el escape al intérprete de mandatos de vim.

Es importante señalar que sudo incluye varios candados de seguridad (predeterminados) que impiden se puedan realizar tareas peligrosas, como redirigir la salida estándar de la ejecución de un programa (STDOUT) hacia archivos fuera del directorio de inicio del usuario utilizado.

Si se define en el archivo /etc/sudoers que un usuario puede ejecutar con privilegios /usr/bin/vim, es decir algo como lo siguiente:

fulano ALL = (ALL) /bin/echo, NOEXEC: /bin/vi, /usr/bin/vim, /bin/more, /usr/bin/less

Sudo permitirá que el usuario regular definido pueda ejecutar /usr/bin/vim de los siguientes modos:

sudo /usr/bin/vim

sudo vim

Pero se impedirá ejecutar vim del siguiente modo:

cd /usr/bin

sudo ./vim

Si, por ejemplo se define en el archivo /etc/sudoers que un usuario puede ejecutar con privilegios /bin/echo, es decir algo como lo siguiente:

fulano ALL = (ALL) /bin/echo, NOEXEC: /bin/vi, /usr/bin/vim, /bin/more, /usr/bin/less

El usuario sólo podrá ejecutar echo de los siguientes modos, asumiendo que se trata del usuario fulano:

sudo /bin/echo "Hola" > /home/fulano/prueba.txt
sudo echo "Hola" > /home/fulano/prueba.txt

Sin embargo, sudo impedirá a los usuarios regulares redirigir la salida estándar hacia archivos fuera de sus propios directorios de inicio, como por ejemplo al ejecutar algo como lo siguiente:

sudo echo "Hola" > /etc/prueba.txt

Para poder realizar la operación anterior, se tendría que ejecutar:

sudo bash -c "echo 'Hola' > /etc/prueba.txt"

Para impedir lo anterior, habría que prohibir en el archivo /etc/sudoers el uso de /bin/bash, como se muestra en el siguiente ejemplo:

fulano ALL = (ALL) ALL, !/bin/su, !/bin/bash !/usr/bin/sudo, !/usr/bin/visudo, NOEXEC: /bin/vi, /usr/bin/vim, /bin/more, /usr/bin/less

Sudo permitirá realizar una tarea con privilegios sobre cualquier archivo dentro de cualquier directorio, aún si el usuario regular carece de permisos de acceso para ingresar a dicho directorio, siempre y cuando especifique la ruta exacta de dicho archivo. Ejemplo:

sudo chown named /var/named/dominio.zone

Sudo siempre impedirá ejecutar algo como lo siguiente cuando el usuario regular carece de permisos de acceso a un directorio o sub-directorio en particular:

sudo chown named /var/named/*.zone

Ejemplos de configuraciones recomendadas.

Si se va a permitir la ejecución de todos los programas del sistema utilizando sudo, como mínimo prohíba el uso de /bin/bash, /bin/su, /usr/bin/sudo (para prevenir se pueda ejecutar «sudo sudo programa»), /usr/bin/passwd root y /usr/sbin/visudo y restrinja el uso de programas que permitan escape al intérprete de mandatos, como serían /usr/bin/less, /bin/more, /bin/vi y /usr/bin/vim. Ejemplo:

fulano ALL = (ALL) ALL, !/bin/bash, !/bin/su, !/usr/sbin/visudo, !/usr/bin/passwd root, !/usr/bin/sudo, NOEXEC: /bin/more, /bin/vi, /usr/bin/less, /usr/bin/vim

De ser posible, evite definir ALL —todos los programas y aplicaciones del sistema— y sólo permita la ejecución de programas específicos. Puede definir todos los que quiera. Ejemplo:

fulano ALL = (ALL) /bin/cat, /usr/bin/chgrp, /usr/bin/chmod, /usr/bin/chown, /sbin/depmod, /usr/sbin/edquota, /usr/sbin/groupadd, /usr/bin/htpasswd, /sbin/ip, /usr/bin/openssl, /usr/bin/systemctl, /usr/bin/tail, /usr/sbin/useradd, /usr/bin/passwd [A-z]*, !/usr/bin/passwd root, NOEXEC: /bin/more, /bin/vi, /usr/bin/less, /usr/bin/vim

Evite utilizar nombres de usuario y, sobre todo, contraseñas predecibles o fáciles de adivinar.

Ejemplos de configuraciones poco recomendadas.

Si se quiere permitir a un usuario ejecutar con sudo prácticamente lo que sea, desde cualquier anfitrión, utilizando cualquier identidad de usuario del sistema y requiriendo ingresar la contraseña correspondiente al menos cada 5 minutos, se puede definir:

fulano ALL = (ALL) ALL

La configuración predeterminada en distribuciones basadas sobre Ubuntu™ Linux utiliza lo siguiente:

%wheel ALL = (ALL) ALL

Con lo anterior sólo los usuarios miembros del grupo wheel podrán hacer uso de sudo. Se recomienda cambiar esta configuración para hacerla un poco más restrictiva, como se muestra en los ejemplos citados algunos párrafos arriba.

Si se quiere permitir a un usuario ejecutar sudo lo que sea, desde cualquier anfitrión, utilizando cualquier identidad de usuario del sistema y sin necesidad de autenticar, se puede definir algo como lo siguiente:

fulano ALL = (ALL) NOPASSWD: ALL

Evite utilizar esta última configuración salvo que sea estrictamente necesario.

Uso de sudo.

Ejecute sudo con la opción -l (minúscula) como usuario regular para mostrar las opciones de variables de entorno permitidas y la lista de programas permitidos y prohibidos:

sudo -l

La salida puede ser algo similar a lo siguiente:

Matching Defaults entries for jbarrios on this host:
    requiretty, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE 
    INPUTRC KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME 
    LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION
    LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME
    LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE
    LINGUAS _XKB_CHARSET XAUTHORITY",
    secure_path=/sbin:/bin:/usr/sbin:/usr/bin

User fulano may run the following commands on this host:
        (ALL) NOPASSWD: ALL, (ALL) !/sbin/fdisk, (ALL) NOEXEC: /usr/bin/vim,
    (ALL) /bin/more

Como root ejecute sudo con la opción -l (minúscula), la opción -U (mayúscula) y el nombre del usuario a consultar para listar los privilegios de un usuario en particular. Ejemplo:

sudo -l -U fulano

Ejecute sudo con la opción -L (mayúscula) para mostrar todas las opciones soportadas en el archivo /etc/sudores.

sudo -L

La salida —que será muy extensa— puede incluir algo similar a lo siguiente:

Available options in a sudoers ``Defaults'' line:

syslog: Syslog facility if syslog is being used for logging
syslog_goodpri: Syslog priority to use when user authenticates
successfully
syslog_badpri: Syslog priority to use when user authenticates
unsuccessfully
long_otp_prompt: Put OTP prompt on its own line
ignore_dot: Ignore '.' in $PATH
mail_always: Always send mail when sudo is run
...
pwfeedback: Provide visual feedback at the password prompt when there
is user input
fast_glob: Use faster globbing that is less accurate but does not
access the filesystem
umask_override: The umask specified in sudoers will override the
user's, even if it is more permissive
log_input: Log user's input for the command being run
log_output: Log the output of the command being run
compress_io: Compress I/O logs using zlib
use_pty: Always run commands in a pseudo-tty

Para ejecutar cualquier programa con sudo, se utiliza la siguiente sintaxis.

sudo -[opciones] programa

Ejemplo:

sudo systemctl restart sshd

Se asumirá que el usuario y grupo utilizados para la identidad serán root si se omite especificar opciones u otros argumentos.

Para especificar que una operación se ejecute como un usuario en particular, ejecute sudo con la opción -u (minúscula) seguida del nombre del usuario a utilizar y el nombre del programa correspondiente como argumento. Ejemplo:

sudo -u zutano vim /home/zutano/datos.txt

Ejecute sudo con la opción -g seguida del nombre del grupo a utilizar y el programa correspondiente como argumento para especificar que una operación se ejecute como un miembro de un grupo en particular. Ejemplo:

sudo -g lp lpadmin -x EPL-5900

Ejecute sudo con la opción -b y el programa correspondiente como argumento para especificar que una operación se realice en segundo plano. Ejemplo:

sudo -b tar cpf /var/respaldos/respaldo-etc.tar /etc

Una vez que el usuario se ha autenticado, el usuario podrá utilizar nuevamente sudo sin necesidad de volver a autenticarse durante 5 minutos —salvo que se especifique lo contrario en el archivo /etc/sudoers. Si un usuario regular ejecuta sudo con la opción -v, éste podrá refrescar el periodo de tiempo sin necesidad de tener que ejecutar de nuevo algo con sudo —en cuyo caso contrario expirará dicha autenticación y será necesario volver a realizar ésta.

sudo -v

Se forzará que expire el periodo de tiempo si se ejecuta sudo con la opción -k (minúscula), obligando a ingresar nuevamente la contraseña la siguiente vez que ejecute sudo.

sudo -k

Lo anterior también permite ejecutar un programa y expirar el periodo de tiempo —estableciendo la fecha de último uso a la fecha y hora actual— de manera simultánea. La ejecución de lo anterior puede requerir ingresar la contraseña del usuario regular si el tiempo ya ha expirado. Por lo general se utiliza de este modo en operaciones donde se desea condicionar a que sean realizadas siempre por un ser humano y jamás por un programa automatizado. Ejemplo:

sudo -k systemctl restart sshd

Si el usuario ejecuta sudo con la opción -K (mayúscula), se forzará que expire el periodo de tiempo por completo (elimina toda referencia de tiempo), obligando a ingresar nuevamente la contraseña la siguiente vez que se ejecute sudo. A diferencia de la opción -k (minúscula), ésta sólo permite ser utilizada sin otros argumentos.

sudo -K

Uso de aliases.

BASH (Bourne-Again Shell) permite utilizar variables de entorno y aliases al iniciar la sesión. Un administrador responsable por lo general preferirá evitar utilizar la cuenta de root y en su lugar hará uso de una cuenta de usuario regular para ejecutar diversos programas a través de sudo, los cuales se pueden simplificar a través de aliases. Por ejemplo, si se quiere definir que se ejecute sudo cada vez que se invoque a systemctl, se puede crear un alias que ejecute sudo con /usr/bin/systemctl, como en el siguiente ejemplo:

alias systemctl="sudo /usr/bin/systemctl"

Lo anterior permitirá ejecutar systemctl utilizando sudo, sin necesidad de teclear «sudo» en el intérprete de mandatos.

CentOS, Fedora y Red Hat Enterprise Linux.

Puede crear diversos aliases que pueden ser de utilidad en el archivo ~/.bashrc del usuario regular utilizado, los cuales permitirán ejecutar automáticamente diversos programas con sudo. Ejemplos:

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
	. /etc/bashrc
fi

# User specific aliases and functions

alias chgrp="sudo /usr/bin/chgrp"
alias chmod="sudo /usr/bin/chmod"
alias chown="sudo /usr/bin/chown"
alias depmod="sudo /sbin/depmod"
alias edquota="sudo /usr/sbin/edquota"
alias groupadd="sudo /usr/sbin/groupadd"
alias groupdel="sudo /usr/sbin/groupdel"
alias htpasswd="sudo /usr/bin/htpasswd"
alias ip="sudo /sbin/ip"
alias less="sudo /usr/bin/less"
alias openssl="sudo /usr/bin/openssl"
alias systemctl="sudo /usr/bin/systemctl"
alias system-config-firewall="sudo /usr/bin/system-config-firewall"
alias system-config-network-tui="sudo /usr/sbin/system-config-network-tui"
alias system-config-printer="sudo /usr/sbin/system-config-printer"
alias tail="sudo /usr/bin/tail"
alias useradd="sudo /usr/sbin/useradd"
alias userdel="sudo /usr/sbin/userdel"
alias vi="sudo /usr/bin/vim"
alias yum="sudo /usr/bin/yum"

Para que surtan efectos los cambios, hay que salir de la sesión y volver a ingresar con la misma cuenta de usuario en cuyo archivo ~/.bashrc se añadieron estos aliases.

En openSUSE™ y SUSE™ Linux Enterprise.

Puede crear diversos aliases que pueden ser de utilidad en el archivo ~/.aliases del usuario regular utilizado, los cuales permitirán utilizar automáticamente diversos programas con sudo. Ejemplos:

alias chgrp="sudo /usr/bin/chgrp"
alias chmod="sudo /usr/bin/chmod"
alias chown="sudo /usr/bin/chown"
alias depmod="sudo /sbin/depmod"
alias edquota="sudo /usr/sbin/edquota"
alias groupadd="sudo /usr/sbin/groupadd"
alias groupdel="sudo /usr/sbin/groupdel"
alias htpasswd="sudo /usr/bin/htpasswd"
alias insserv="sudo /sbin/insserv"
alias ip="sudo /sbin/ip"
alias less="sudo /usr/bin/less"
alias openssl="sudo /usr/bin/openssl"
alias systemctl="sudo /usr/bin/systemctl"
alias tail="sudo /usr/bin/tail"
alias useradd="sudo /usr/sbin/useradd"
alias userdel="sudo /usr/sbin/userdel"
alias vi="sudo /usr/bin/vim"
alias yast="sudo /sbin/yast2"
alias zypper="sudo /usr/bin/zypper"

Para que surtan efectos los cambios, hay que salir de la sesión y volver a ingresar con la misma cuenta de usuario en cuyo archivo ~/.aliases se añadieron estos aliases.

Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

Última Edición: 23/09/2016, 16:55|Hits: 86,111 Ver la versión para imprimir