MTE Explica: Las diferencias entre Su, Sudo Su, Sudo Sudo -s y Sudo -i

En la línea de comandos de Linux hay muchas maneras diferentes de obtener una sesión raíz en el terminal. Esto puede crear cierta confusión, ya que la mayoría de los usuarios principiantes que buscan obtener root pueden no estar familiarizados con la forma en que cada comando puede obtener acceso root, cómo son diferentes y cuándo son importantes estas diferencias.

Es por esto que vamos a desmontar cada uno de los muchos comandos diferentes que se utilizan para obtener acceso root en un terminal. Explicaremos exactamente cómo obtienen root, cuándo utilizarlos y todo lo que hay entre ellos.

su

El comando su sustituye al usuario actual en uso por el sistema en el shell. Puede cambiar a cualquier usuario tomando su y añadiendo un nombre de usuario con él. Esto le dirá al sistema que cambie (y esencialmente salga) del usuario actual al especificado. Alternativamente, el comando su puede acceder como root introduciendo su sin especificar nada después del comando.

«Su» se usa mejor cuando un usuario quiere acceso directo a la cuenta de root en el sistema. No pasa a través de la puerta nada de eso. En su lugar, la contraseña del usuario root debe ser conocida y utilizada para iniciar sesión con. Además, otras formas de obtener root no tienen el beneficio de obtener acceso al directorio raíz y al entorno raíz.

sudo su

Este comando es esencialmente lo mismo que ejecutar su en el shell. En lugar de decirle al sistema que «cambie de usuario» directamente, le está diciendo que ejecute el comando «su» como root. Cuando se ejecuta sudo su, se inician «.profile,» «.bashrc» y «/etc/profile», de forma muy parecida a ejecutar su (o su root). Esto se debe a que si se ejecuta cualquier comando con sudo delante, es un comando al que se le dan privilegios de root.

Aunque no hay mucha diferencia con «su,» sudo suis sigue siendo un comando muy útil por una razón importante: Cuando un usuario está ejecutando «su» para obtener acceso de root en un sistema, debe conocer la contraseña de root. La forma en que se da a root con sudo su es solicitando la contraseña del usuario actual. Esto hace posible obtener root sin la contraseña de root, lo que aumenta la seguridad.

sudo -i

Usar sudo -i es virtualmente lo mismo que el comando sudo su. Los usuarios pueden obtener root con «sudo» y no cambiando al usuario root. Al igual que sudo su, la bandera -i permite a un usuario obtener un entorno de root sin tener que conocer la contraseña de la cuenta de root. sudo -i también es muy similar al uso de sudo su en el sentido de que leerá todos los archivos ambientales (.profile, etc.) y configurará el entorno dentro del shell con él.

Donde difiere de «sudo su» es que el sudo -i es una forma mucho más limpia de obtener root y un entorno de root sin interactuar directamente con el usuario root. ¿Cómo? Con sudo suyos estás usando más de un comando de root setuid. Este hecho hace que sea mucho más difícil averiguar qué variables ambientales se mantendrán y cuáles cambiarán (al inundar el entorno de las raíces). Esto no es cierto con el sudo -i, y es por esto que la mayoría de la gente lo ve como el método preferido para obtener root sin tener que iniciar sesión directamente.

sudo -s

MTE Explica: Las diferencias entre Su, Sudo Su, Sudo Sudo -s y Sudo -i


El interruptor -s para el comando «sudo» lee la variable $SHELL del usuario actual que ejecuta los comandos. Este comando funciona como si el usuario estuviera ejecutando sudo /bin/bash. Sudo -s es un shell de estilo «no-login». Esto significa que a diferencia de un comando como sudo -ior sudo sudo, el sistema no leerá ningún archivo de entorno. Esto significa que cuando un usuario le dice a la shell que ejecute sudo -s, obtiene root pero no cambiará al usuario o al entorno de usuario. Su hogar no será el hogar raíz, etc.

Este comando se utiliza mejor cuando el usuario no desea tocar root en absoluto y sólo desea un intérprete de comandos de raíz para facilitar la ejecución del comando. Otros comandos mencionados anteriormente obtienen acceso de root, pero tocan los archivos ambientales de root, y permiten a los usuarios un acceso más completo a root (lo que puede ser un problema de seguridad).

Conclusión: ¿Qué comando debo usar?

Cada comando tiene su caso de uso. Lo importante aquí es entender qué hace cada comando y cuándo utilizarlos. Tal como está, sudo -i es la forma más práctica y limpia de obtener un entorno de raíces. Por otro lado, los usuarios de sudo -s encontrarán que pueden obtener un shell de raíz sin la capacidad de tocar el entorno de raíz, algo que tiene beneficios de seguridad añadidos.

Realmente no hay ningún comando en esta lista que sea 100% mejor. A medida que los usuarios se sientan más cómodos con la línea de comandos, tendrán que tener en cuenta todas las formas de obtener root (y hay muchas) y sopesar los pros y los contras y actuar en consecuencia. Espero que con la ayuda de este artículo estas decisiones sean más fáciles de tomar.

¿De qué manera prefieres obtener acceso root en Linux? Cuéntanos más abajo!

Imagen: blog.david-jensen.com

Fuente: este post proviene de Vida Tecno, donde puedes consultar el contenido original.
¿Vulnera este post tus derechos? Pincha aquí.
Creado:
¿Qué te ha parecido esta idea?

Esta idea proviene de:

Y estas son sus últimas ideas publicadas:

Etiquetas: Linux

Recomendamos

Relacionado

Linux

¿Alguna vez has querido ejecutar un script al iniciar con privilegios de root? Si usted tiene un servidor en casa, o tal vez sólo un escritorio Linux, esto podría haber pasado por su mente. Esto suena dudoso, pero si usted entiende los riesgos, la recompensa por hacer esto puede ser bastante buena. Las razones principales son que no habrá más arranques del servidor, inicio de sesión sobre ssh, int ...

Linux

Dentro de su sistema Linux o macOS, hay un archivo llamado «sudoers» que controla los niveles más profundos de su sistema de permisos. Permite o niega a los usuarios el acceso a los superusuarios y tiene algunas preferencias especiales para sudo. ¿Qué es el archivo Sudoers? El archivo sudoers es un archivo de texto que vive en «/etc/sudoers». Controla cómo funciona sudo en su m ...

Linux

Dos potentes características del shell de la línea de comandos de Linux son la redirección y las tuberías que permiten que la salida (o incluso la entrada) de un programa se envíe a un archivo o a otro programa. Es posible que ya haya utilizado estas funciones sin ser consciente de ello. Siempre que se ha utilizado el signo «>» en un comando o «|» entonces se ha utilizado la ...

Linux

Una de las responsabilidades centrales de la administración de Linux es la gestión de usuarios. Mediante el uso de la línea de comandos, la creación de usuarios puede realizarse de forma remota o programática. Una vez que haya creado un usuario, podrá agregarlo a los grupos o concederle privilegios ampliados. Además, usted puede mantener un registro de auditoría de lo que se ha hecho en su servido ...

Linux

¿No sería genial si pudieras obtener notificaciones emergentes cuando terminan esas largas tareas que se ejecutan desde la línea de comandos? Bueno, tú puedes. En realidad, crear notificaciones de escritorio desde la línea de comandos es muy sencillo con el comando notify-send. Puede usar notify-send en sus scripts o establecer que se ejecute siguiendo un comando largo que acaba de escribir en la ...

Linux

Como sistema operativo, Linux ofrece una estabilidad impresionante, un increíble soporte de código abierto y una increíble gama de potentes herramientas de administración. Aunque Windows 10 es capaz de ofrecer soporte para algunas de estas cosas, no hay nada como usar un intérprete de comandos bash para administrar sus máquinas locales y de red. Hasta hace poco, la ejecución de bash en Windows req ...

Linux

Unas cuantas veces, al instalar/actualizar un paquete desde la línea de comandos (usando apt-get o apt) en Ubuntu, obtenemos este error: E: No se puede bloquear el directorio de administración (/var/lib/dpkg/) . Desde el punto de vista de un principiante, es un error complejo, ya que la mayoría de los nuevos usuarios no son conscientes del directorio «/var/lib/dpkg/» y de lo que tiene qu ...

Linux

Aunque es posible obtener información sobre el uso del disco desde los distintos escritorios Linux, aquellos que se sienten cómodos con la línea de comandos pueden obtener muchos más detalles usando los comandos df y du. Con estos dos comandos, no sólo puede descubrir detalles sobre el espacio libre en los sistemas de ficheros montados, sino que también puede ver la cantidad de espacio utilizado p ...

Sin duda, un sistema Linux recién instalado es menos susceptible al malware, spyware y hacking que un sistema Windows recién instalado. Sin embargo, la mayoría de los sistemas Linux están configurados con algunos ajustes predeterminados que son inherentemente inseguros. Algunas distribuciones de Linux están diseñadas para ser instaladas con valores predeterminados muy seguros, pero esto resulta en ...

Linux

Al categorizar las distribuciones de Linux, a menudo es útil especificar qué sistema de gestión de paquetes utiliza la distribución. Hay muchos sistemas de gestión de paquetes diferentes en uso, pero los dos más populares son probablemente los formatos.deb y.rpm. El primero viene de Debian y es usado por Ubuntu, mientras que el segundo fue desarrollado por RedHat. NixOS es una distribución Linux c ...