¿Cuáles son las diferencias entre sudo, su, visudo, chroot y gksu?

Respuestas:

24
  • chrootes una forma de ingresar una carpeta y 'falsificar' esa carpeta /para que se ejecute en su interior. Esto le permite ejecutar ejecutables en una instalación de Ubuntu que no se inicie al montarlo en otro lugar que no sea /y usar /bin/bash(el que está dentro de la instalación) para obtener un indicador de terminal.

  • sudo- Permite que ciertas cuentas se autentiquen para ejecutar un programa como root u otro usuario. Algunos programas pueden no necesitar una contraseña como se define en el sudoersarchivo. Si la solicitud está permitida o no depende del usuario (y del grupo) en ejecución sudo, y del comando a ejecutar, como se define en sudoers.

  • su- También es una forma de elevación, pero tiene diferencias, ya que realiza un inicio de sesión interactivo completo como root (u otro usuario) y proporciona un mensaje bash a menos que se especifique lo contrario con argumentos. Utiliza las credenciales del usuario objetivo como autenticación.

  • visudo- Edita el sudoersarchivo. Esto utiliza un ejecutable especial que verifica la sintaxis del archivo para garantizar que no esté bloqueado sudodebido a un sudoersarchivo dañado . Si intenta guardar una configuración no válida, lo detendrá y lo regresará al editor para corregirlo.

  • gksudoogksu es lo mismo que sudo, excepto que es gráfico y reescribe algunas rutas para que los programas gráficos no causen problemas de permisos en el perfil del usuario, especialmente con ~/.Xauthority.

ζ--
fuente
1
Para ser exactos suy sudopermitir ejecutar procesos como otro usuario , no tiene que ser root. susiempre se puede usar para cambiar a cualquier otro usuario (autenticándose con las credenciales de este usuario). Mientras sudose puede configurar particularmente para permitir la ejecución de programas específicos en un contexto de usuario específico por parte de usuarios específicos. Sin embargo, la mayoría de las veces se usan para obtener privilegios de root.
Paul Hänsch
44

sudo:

Sudo (superuser do) permite a un administrador del sistema dar a ciertos usuarios (o grupos de usuarios) la capacidad de ejecutar algunos (o todos) comandos como root mientras registra todos los comandos y argumentos. Sudo opera por comando.

No es un reemplazo para el caparazón.

Las características incluyen: la capacidad de restringir qué comandos puede ejecutar un usuario en función de cada host, el registro abundante de cada comando (proporcionando una pista de auditoría clara de quién hizo qué), un tiempo de espera configurable del comando sudo y la capacidad de usar el mismo archivo de configuración (sudoers) en muchas máquinas diferentes.

fuente

visudo

visudo es una utilidad de línea de comandos que permite editar el /etc/sudoersarchivo de manera segura. Se abre /etc/sudoers, utilizando la interfaz del editor vi de forma predeterminada (aunque esto se puede cambiar configurando la variable de entorno EDITOR del shell en un editor de texto diferente), evita múltiples ediciones simultáneas con bloqueos, realiza comprobaciones de estado y comprobaciones de errores de análisis.

fuente

SU

El comando su, también conocido como usuario sustituto, superusuario o usuario de cambio, permite que un operador de computadora cambie la cuenta de usuario actual asociada con la consola virtual en ejecución.

Por defecto, y sin ningún otro argumento de línea de comando, esto elevará al usuario actual al superusuario del sistema local.

Cuando se ejecuta desde la línea de comando, su solicita la contraseña del usuario de destino y, si se autentica, otorga al operador acceso a esa cuenta y a los archivos y directorios a los que se le permite acceder.

Además, uno puede cambiar a otro usuario que no sea el superusuario

fuente

raíz

root es el nombre de usuario o cuenta que, de manera predeterminada, tiene acceso a todos los comandos y archivos en un sistema operativo Linux u otro tipo de Unix. También se conoce como la cuenta raíz, el usuario raíz y el superusuario.

La raíz de la palabra también tiene varios significados adicionales relacionados cuando se usa como parte de otros términos.

Uno de estos es el directorio raíz, que es el directorio de nivel superior en un sistema. Es decir, es el directorio en el que residen todos los demás directorios, incluidos sus subdirectorios y archivos. El directorio raíz está designado por una barra diagonal ( /).

Otro es /root(raíz de barra pronunciada), que es el directorio de inicio del usuario raíz.

También puede referirse a la raíz del usuario, que es el administrador del sistema con todos los privilegios.

fuente

chroot

Un chroot es una operación que cambia el directorio raíz aparente para el proceso en ejecución actual y sus hijos. por ejemplo, si hace chroot /mnt/chroot-test, el directorio /mnt/chroot-testserá su raíz virtual a la que podría referirse /.

fuente

Usos de chroots

Los siguientes son algunos usos posibles de chroots:

  1. Aislamiento de aplicaciones inseguras e inestables.

  2. Ejecución de aplicaciones de 32 bits en sistemas de 64 bits

  3. Probar nuevos paquetes antes de instalarlos en el sistema de producción

  4. Ejecutar versiones anteriores de aplicaciones en versiones más modernas de Ubuntu

  5. Crear nuevos paquetes, permitiendo un control cuidadoso sobre los paquetes de dependencia que están instalados

fuente y más información sobre chroot


fuente
1
casi confusamente, en ubuntu, visudo usa nano. Encuentro una manera fácil de recordar cuál es cuál es 'su' = cambiar de usuario (a raíz: sí, también puede usarlo para cambiar a otros usuarios), 'sudo' = cambiar de usuario a raíz y hacer, y chroot como ' cambiar raíz '. No del todo exacto, pero lo suficientemente cerca como para recordarlo.
Journeyman Geek
1
@JourneymanGeek Una extensión más precisa y, creo, igual de fácil del sumneumónico sudoes decir que sudosignifica "Cambio de usuario DO" (es decir, hacer como usuario cambiado) o "SuperUser DO" (es decir, hacer como superusuario). Esto hace que sea sudoerselegantemente asociativo (es decir, "CAMBIADOR DE USUARIO CONMUTADO" en lugar de solo "(Cambiar Usuario y HACER)"). La razón por la que estas variantes son más precisas es que sudopermite que alguien realice una acción como usuario alternativo, pero no necesariamente le permite ser ese usuario alternativo en general (dependiendo del contenido de /etc/sudoers).
Eliah Kagan
@maythux: Ese es solo un significado de chroot . (No solo pregunte a Wikipedia). Más comúnmente significa un subsistema seguro (y bloqueado), que se ejecuta dentro de Unix / Linux, que permite que solo se use un pequeño conjunto de ejecutables (o servicios).
david6
5

SU te conecta como root.

El terminal permanecerá como root para la sesión.

Con sudo (superuser do) puede realizar operaciones como root mientras está conectado como usuario normal.

luso
fuente