¿Cuál es la diferencia entre sudo y su?


Índice:

      Fuentes

      Su

      Sudo

      Problemas con sudo: el período de gracia


Fuentes  ⮴  

link=https://blog.desdelinux.net/cual-es-la-diferencia-entre-sudo-y-su/

link=https://www.zeppelinux.es/diferencias-entre-su-y-sudo/



Su  ⮴  

El programa su permite usar el intérprete de comandos de otro usuario sin nece-

sidad de cerrar la sesión actual. Comúnmente se usa para obtener permisos de

root para operaciones administrativas sin tener que salir y reentrar al siste-

ma.

Algunos entornos de escritorio, entre ellos GNOME y KDE, tienen programas que

piden gráficamente una contraseña antes de permitir al usuario ejecutar un co-

mando que usualmente requeriría tal acceso.


El nombre su proviene del inglés substitute user (usuario substituto). También

hay quien lo hace derivar de superuser (super-usuario, es decir, el usuario

root o administrador) ya que habitualmente se utiliza para adoptar el rol de

administrador del sistema.


Cuando se ejecuta, su pide la contraseña de la cuenta a la se quiere acceder,

y si es aceptada, da acceso a dicha cuenta.


    [fulano@localhost]$ su

    Contraseña:

    [root@localhost]# exit

    logout

    [fulano@localhost]$


Al no poner un usuario, se accede como administrador. Sin embargo, también es

posible pasar como parámetro otro nombre de usuario.


    [fulano@localhost]$ su mongo

    Contraseña:

    [mongo@localhost]# exit

    logout

    [fulano@localhost]$


Una vez introducida la contraseña, podemos ejecutar los comandos como si

fuésemos el otro usuario. Al escribir exit, volvemos a nuestro usuario.


Una variante muy utilizada es usar su seguido de un guión. Así, para loguearte

como root, tenés que ingresar su – y para loguearte como otro usuario su –

otrousuario. ¿La diferencia entre usar o no el guión? Se recomienda usar el

guión porque simula que te logueás con ese usuario; por consiguiente, ejecuta

todos los archivos de inicio de ese usuario, cambia el directorio actual al

HOME de ese usuario, cambia el valor de algunas variables del sistema

adaptándolas al nuevo usuario (HOME, SHELL, TERM, USER, LOGNAME, entre otros),

y otras cositas más.


Un administrador de sistemas debe tener mucho cuidado al elegir una contraseña

para la cuenta de root/administrador, para evitar un ataque por parte de un

usuario no privilegiado que ejecute su. Algunos sistemas de tipo Unix tienen

un grupo de usuarios llamado wheel, que comprende a los únicos que pueden

ejecutar su. Esto podría o no reducir los problemas de seguridad, ya que un

intruso podría simplemente apoderarse de una de esas cuentas. El su de GNU,

sin embargo, no admite el uso de ese grupo; esto se hizo por razones filosófi-

cas.



Sudo  ⮴  

Un comando relacionado, llamado sudo, ejecuta un comando como otro usuario, pe-

ro respetando una serie de restricciones sobre qué usuarios pueden ejecutar

qué comandos en nombre de qué otros usuarios (usualmente especificadas en el

archivo /etc/sudoers).


Por otro lado, a diferencia de su, sudo pide a los usuarios su propia contra-

seña en lugar de la del usuario requerido; esto permite la delegación de coman-

dos a usuarios en otras máquinas sin tener que compartir contraseñas, reducien-

do el riesgo de dejar terminales desatendidas.


La ventaja de sudo respecto de su es que sólo ejecuta el comando solicitado si-

mulando ser el otro usuario, sin cambiar verdaderamente el usuario actual. Ello

implica que uno puede ejecutar un comando como administrador y, al segundo si-

guiente, volverá a tener los privilegios del usuario que estaba usando antes o

casi.



Problemas con sudo: el período de gracia  ⮴  

Algunos ven como una brecha de seguridad el hecho de que sudo otorgue un

«período de gracia» que permita al usuario ejecutar comandos como otro usuario

sin la necesidad de tener que ingresar una y otra vez sudo delante del comando

y la contraseña luego de ejecutarlo. Pasado ese «período de gracia», sudo vol-

verá a preguntarnos la clave.


Esto es «malo», esencialmente porque alguien podría apoderarse de nuestra compu

luego de haber ingresado la contraseña de sudo y mientras el «período de gracia»

está activo hacer un DESASTRE.


Afortunadamente, es posible deshabilitar el «período de gracia», lo que va a

mejorar la seguridad de tu sistema. Sólo hay que agregar una línea en el archivo

/etc/sudoers:


    sudo nano /etc/sudoers


Y agregá la siguiente línea al final del archivo:


    Defaults:ALL timestamp_timeout=0


El cambio tiene efecto en forma inmediata, sin necesidad de reiniciar el siste-

ma.


El contenido del artículo se adhiere a nuestros principios de ética editorial.

Para notificar un error pincha aquí.