Realizando tareas privilegiadas en Ubuntu

De Bibliaubuntu

Aparte de tu propio nombre de usuario e identificador numérico, hay otro usuario que es el más importante en Linux: el usuario llamado root, usuario raíz, o superusuario. El nombre de usuario root lleva asociado el ID 0 junto al ID de grupo 0.

En la mayoría de los sistemas Linux, las operaciones que necesitan grandes privilegios se ejecutan a menudo utilizando previamente el comando su (sustituir usuario) para hacerse superusuario. Sin embargo, Ubuntu lo hace de una forma algo diferente. Ubuntu utiliza el comando sudo (sustituye usuario y ejecuta (do)) para efectuar todas las operaciones con privilegios. El comando sudo utiliza el fichero de configuración en formato texto /etc/sudoers para determinar cuáles usuarios pueden efectuar esas operaciones como el superusuario. En Ubuntu, cualquier miembro del grupo admin puede efectuar operaciones privilegiadas igual que el usuario root. Puedes utilizar sudo en cualquier Linux, pero no puedes usar su en Ubuntu.

La diferencia entre utilizar su y sudo es sutil pero significativa:

  • Cuando se utiliza su, ejecutas el comando su, cuando te lo pida tecleas la contraseña del usuario root, y entonces empieza un sub-intérprete de comandos con privilegios de superusuario. En ese momento puedes ejecutar cualquier comando privilegiado que quieras, todo dentro de ese intérprete de comandos. Todos se ejecutan con permisos de superusuario. Cuando terminas, puedes salir del intérprete o suspenderlo para usarlo después.
  • Cuando se utiliza sudo, ejecutas el comando sudo, seguido del nombre y argumentos del comando que quieras ejecutar. La primera vez te pedirá la contraseña de tu usuario.


NOTA
los comandos su y sudo no están restringidos sólo a ejecutar comandos como superusuario. Puedes ejecutarlos como cualquier otro usuario especificando el nombre de usuario después ("su juan") y tecleando la contraseña de ese otro usuario cuando la pida. De forma parecida, sudo tiene la opción -u para especificar el nombre del otro usuario con el que quieres ejecutar un comando. Como siempre, el comando su exige que conozcas la contraseña del otro usuario, mientras que el comando sudo sólo exige que escribas tu propia contraseña.

Veamos unos pocos ejemplos para comparar el uso de ambos comandos. Un ejemplo de uso de su para visualizar las particiones disponibles en un disco:

$ su
Password: <teclea-contraseña-root>
#  fdisk -l /dev/sda
[salida a pantalla del comando]
# exit
$

Para hacer lo mismo con sudo:

$ sudo fdisk -l /dev
Password: <teclea-tu-contraseña>
[salida a pantalla del comando]
$

En sistemas Linux diferentes a Ubuntu, podrías utilizar la opción -c de su (ejecuta un único comando) para hacer algo parecido, como en éste ejemplo:

$ su -c fdisk -l /dev/sda
Password: <teclea-contraseña-root>
[salida a pantalla del comando]
$

La diferencia clave entre ambos comandos estriba en que uno te pide la contraseña del root y el otro te pide tu contraseña personal. Sin embargo, el interés de Ubuntu en usar sudo tiene algunas ventajas:

  • El sistema es más dificil de atacar porque el atacante debe empezar por descubrir la identidad de algún usuario con privilegios antes de intentar romper su seguridad y entrar.
  • Los usuarios sólo deben recordar su contraseña personal para ejecutar operaciones con privilegios (si se les ha dado esa potestad, claro). No hay necesidad de establecer y proteger la clave del superusuario de su Ubuntu.


CONSEJO
Si deseas ejecutar varios comandos con privilegios en una fila sobre Ubuntu, hay dos alternativas. La primera es ejecutar el comando sudo -s para ejecutar un intérprete de comandos como superusuario. La segunda, ejecutar sudo /bin/bash. En ambos casos, debes recordar que al terminar hay que dar la orden explícita de salir del intérprete (intérprete que has abierto con permisos de root, es un posible riesgo de seguridad si te vas y alguien más toca tu teclado).


NAVEGACIÓN
Apartado Anterior | Índice | Apartado Siguiente

Herramientas personales

sl
דומיין בעברית  דומיין  דומין  תוכנה לניהול  קשרי לקוחות  CRM, ניהול קשרי לקוחות  דומין בעברית  פורומים  ספרדית  גיבוי