logo

sudo de linux

Introducción

El comando sudo de Linux significa Superusuario hacer . Generalmente, se aplica como prefijo de algunos comandos que el superusuario puede ejecutar.

Si anteponemos el comando junto con otros comandos, ejecutará ese comando con altos privilegios. En otras palabras, permitirá al usuario, con la autorización adecuada, ejecutar un comando como a otros usuarios les gusta el superusuario.

Es igual a la opción. 'ejecutar como administrador' en Windows. La opción sudo nos permite tener más de un administrador. Los usuarios que pueden aplicar el comando sudo deben tener la entrada dentro del archivo sudoers ubicada en '/etc/sudoers/' .

Nota: Para ver o editar el archivo tenemos que aplicar el comando sudo. Para editar el archivo, se sugiere aplicar el comando 'visudo'.

El comando sudo de forma predeterminada necesita que los usuarios se verifiquen a sí mismos junto con una contraseña que es la contraseña del usuario, no una contraseña de root en sí.

Sintaxis del comando sudo

La sintaxis del comando sudo se menciona a continuación:

 sudo OPTION... COMMAND 

Opción en el comando sudo

Algunas de las opciones importantes del comando sudo se explican a continuación:

1 en: Lo que representa versión . Esta opción habilita el comando sudo para imprimir el número de versión y salir. La opción -V imprimiría los valores predeterminados de la lista de sudo. Se observó una pausa si el usuario solicitante ya es el root.

sudo de linux

2. -l: Lo que representa lista . Esta opción ayudará a imprimir los diversos comandos permitidos al usuario en el host actual.

Muestra que el usuario actual podría aplicar todos los comandos como sudo.

rebanada de java
sudo de linux

3. -h o -ayuda: La h significa ayuda en esta opción. Esta opción habilita el comando sudo para imprimir un mensaje de uso y salida.

sudo de linux

4. -en: Lo que representa validar . Si el comando sudo actualiza la marca de tiempo del usuario, la validación solicitará la contraseña del usuario si es necesario. Extiende el tiempo de espera del comando sudo durante los otros 5 minutos pero no ejecuta ningún comando. No proporciona ningún resultado.

5. -k: Lo que representa matar . Esta opción invalida la marca de tiempo del usuario para sudo. Por lo tanto, la próxima vez que se ejecute el comando sudo se requerirá una contraseña. La opción -k no necesita ninguna contraseña y se incluyó para permitir a los usuarios revocar los permisos del comando sudo a través del .cerrar sesión archivo.

6. -b: Lo que representa fondo . Esta opción informa al comando sudo que ejecute los comandos proporcionados en segundo plano.

Nota: Si aplicamos esta opción, no podemos aplicar el control del trabajo del shell para manipular el proceso.

sudo de linux

7. -K: Esta opción es la misma que la opción -k. Sin embargo, representa seguro que matarás . Esta opción se aplica para eliminar por completo la marca de tiempo del usuario. Tampoco necesita ninguna contraseña.

8. -p: Lo que representa inmediato . Esta opción nos permite anular la solicitud de contraseña (predeterminada) y aplicar una personalizada. Se permiten algunos escapes porcentuales que son los siguientes:

  • %u se desarrolla con el nombre de inicio de sesión del usuario que lo invoca.
  • %U se desarrolla según el nombre de inicio de sesión del usuario.
  • %h se desarrolla con el nombre de host (local) sin ningún nombre de dominio.
  • %H se desarrolla en el nombre de host (local) con el nombre del dominio (solo cuando el nombre de host de la máquina está completamente calificado)
  • %% (dos caracteres consecutivos) se puede dividir en un carácter % individual.
sudo de linux

9. -norte: Esta opción ejecutará el comando sin solicitar la contraseña. Es muy útil si deseamos ejecutar algunos comandos como tareas en segundo plano (o dentro del script de shell), donde no queremos que el comando sudo pregunte sobre la contraseña. Esta opción es la abreviatura de no interactivo.

fusionar ordenación en java

10. -en: Lo que representa usuario . Esta opción permite que el comando sudo ejecute los comandos descritos además del usuario root. Para especificar un fluido En lugar del nombre de usuario, podemos usar el #uido .

11. -H: Lo que representa HOGAR . Esta opción puede establecer un variable de entorno INICIO para nuestro directorio de inicio del usuario root como se describe dentro del archivo passwd. El comando sudo por defecto no cambia INICIO.

12. -s: Representa el caparazón . Esta opción ejecuta el shell descrito a través de un Variable de entorno SHELL cuando está configurado o este shell como se describe dentro del contraseña archivo.

objeto a json en java

13. -S: Lo que representa entrada estándar . Esta opción habilita el comando sudo para leer la contraseña a través de la entrada estándar en lugar del dispositivo terminal.

14. -: Esta opción ilustra que el comando sudo debe dejar de procesar los argumentos de la línea de comando. Es más útil junto con un indicador -s.

15. -a: Lo que representa tipo de autenticación . Esta opción habilita el comando sudo para usar el tipo de autenticación descrito si se valida un usuario, según lo permitido por la /etc/login/.config .

El administrador del sistema podría describir la lista de métodos de autenticación específica de sudo incluyendo el 'auto-sudo' entrada dentro del /etc/login/.config .

sudo de linux

Variables de entorno en el comando sudo

Las siguientes son algunas de las variables de entorno que aplica el comando sudo:

S.No. Etiqueta Descripción
1. EDITOR Es un editor predeterminado que se puede usar dentro del modo -e (sudoedit) cuando VISUAL no está arreglado.
2. HOGAR Se establecerá en el directorio de inicio del usuario (objetivo) en modo -H o -s (o cuando se formó el comando sudo con la opción, es decir, -enable-shell-sets-home).
3. CAMINO Se establece en el valor correcto cuando la opción, es decir, Secure_path sudoers está fija.
4. CAPARAZÓN Se puede utilizar para determinar el shell a ejecutar con la opción -s.
5. SUDO_COMMAND Se establece en un comando ejecutado por el comando sudo.
6. SUDO_PROMPT Se puede utilizar como solicitud de contraseña (predeterminada).
7. SUDO_USER Se establece en el inicio de sesión del usuario que solicita el comando sudo.
8. SUDO_UID Se establece en el uid del usuario que solicita el comando sudo.
9. SUDO_GID Se establece en el gid del usuario que solicita el comando sudo.
10. SUR_PS1 PS1 se fijaría en su valor si estuviera configurado.
11. USUARIO Se establece en el usuario (root a menos que se describa la opción, es decir, -u).
12. VISUAL Es un editor predeterminado y se utiliza dentro del modo -e (sudoedit).

Historia del comando sudo

Cliff Spencer y Robert Coggeshall escribieron el subsistema actual en 1980 en SUNY/Buffalo en el Departamento de Ciencias de la Computación. Robert Coggeshall llevó consigo sudo a la Universidad de Colorado Boulder. Básicamente, las características y el código fueron cambiados por los miembros de TI de la Facultad de Ingeniería y el Departamento de Ciencias de la Computación de la Universidad de Colorado en Boulder y ciencias aplicadas con Todd C. Miller entre 1986 y 1993.

Públicamente, la última versión ha sido administrada desde 1994 por Todd .C Miller (desarrollador de OpenBSD) y se ha compartido desde 1999 bajo la licencia estilo ISC.

Thomas Claburn caracterizó tales incertidumbres como exageradas en noviembre de 2009 en respuesta al hecho de que Microsoft tenía privilegios sudo. En pocas palabras, las afirmaciones se enmarcaron en una GUI específica en lugar del enfoque sudo.

Diseño del comando sudo

Los usuarios pueden proporcionar su contraseña a sudo cuando sea necesario en lugar de un superusuario, a diferencia del comando su. Permite a los usuarios accesibles ejercer privilegios calificados sin tener que guardar el secreto de la contraseña de la otra cuenta.

  • Cuando el archivo de configuración permite el acceso del usuario, después de la autenticación, el sistema solicita el comando reclamado.
  • El comando sudo retuvo los derechos de invocación del usuario durante un tiempo de gracia (normalmente 5 minutos) por pseudoterminal y permite al usuario ejecutar varios comandos sucesivos como el usuario reclamado sin tener que volver a proporcionar ninguna contraseña.
  • El comando sudo puede configurarse para registrar cada comando ejecutado como una característica de auditoría y seguridad.
  • En el momento en que un usuario dispara para invocar el comando sudo sin aparecer en la lista dentro del archivo de configuración, se le presenta a ese usuario una ilustración de excepción que le indica que el disparo ha sido grabado.
  • Se guardaría una entrada dentro del sistema y se informaría al usuario root por correo.

Configuración del comando sudo

El /etc/sudoers El archivo incluye los grupos de usuarios o la lista de usuarios con permiso para ejecutar un conjunto de comandos y al mismo tiempo contiene los derechos de un usuario root u otro usuario listado. Es posible que el programa esté configurado para necesitar una contraseña.

Impacto del comando sudo

En algunas distribuciones del sistema, el comando sudo ha suplantado el uso (predeterminado) de un inicio de sesión diferente del superusuario para diversas operaciones administrativas, lo más importante en algunas distribuciones macOS de Apple y Linux.

descargar vlc youtube

Previene algunos exploits y también permite un registro más protegido de los comandos de administrador.

RBAC

El comando sudo podría usarse para el tránsito entre varios tipos de roles dentro del control de acceso basado en roles en colaboración con SELinux.

Programas y herramientas similares

visudo es una utilidad de línea de comando que permite editar el archivo de configuración de sudo de forma segura. Realiza comprobaciones de sintaxis y cordura y también evita más de una edición simultánea junto con bloqueos.

El programa runas facilita el mismo rendimiento en Microsoft Windows; sin embargo, no puede pasar líneas de comando largas actuales a un niño, variables de entorno o directorios.

No admite elevación general y ayuda a ejecutar al niño como cualquier otro usuario. Para Windows, se agregan un sudo y su verdaderos que pueden transferir cada uno de esos detalles de estado y comenzar al niño como otro usuario o elevado con Carcasa Hamilton C .

La GUI está disponible para sudo ( gksudo en particular) pero está en desuso en Debian y tampoco ya en Ubuntu. Varios otros tipos de interfaces de usuario no están diseñados directamente en sudo, pero facilitan la misma elevación de privilegios (temporal) para objetivos administrativos como Servicios de autorización de Mac OS X, Control de cuentas de usuario dentro de Microsoft Windows , y pkexec dentro de los sistemas operativos tipo Unix .

Desde la versión 5.8 de OpenBSD (octubre de 2015), donar está disponible. Se ha especificado sustituir el comando sudo dentro del sistema base de OpenBSD.

su vs. sudo

Si estamos acostumbrados a una configuración de Linux más clásica, entonces estamos acostumbrados a aplicar el comando su para obtener privilegios de root. También podemos emitir el comando su para iniciar sesión efectivamente como root (el hogar del root se convierte en nuestro hogar).

Usando este tipo de distribuciones también podemos iniciar sesión como usuario de ruta. Pero no es una buena idea iniciar sesión como usuario root. Si estamos aplicando una distribución que depende del comando su y permite el inicio de sesión del usuario root, entonces inicie sesión como nuestro usuario estándar y el comando su como usuario root.

Lo más probable es que notemos que no podemos iniciar sesión como usuario root usando distribuciones basadas en sudo. De hecho, en algunas distribuciones como Ubuntu, la cuenta del usuario root ha sido deshabilitada.

No podemos iniciar sesión como usuario root y usar el comando su para convertirnos en usuario root. Podríamos hacer es emitir estos comandos usando el comando sudo para obtener privilegios administrativos.

Uso del comando sudo

Hay dos formas diferentes de ejecutar aplicaciones administrativas con Linux. Podemos cambiar el superusuario o el usuario root usando el comando su o podemos aprovechar el comando sudo.

Cuando utilizamos nuestro tiempo en la terminal, sudo es uno de los comandos importantes que usaremos con bastante frecuencia. Usar el comando sudo en lugar de iniciar sesión como usuario root está más protegido porque solo podemos otorgar unos pocos privilegios administrativos a un único usuario sin que este conozca la contraseña de root.

javascript global variable

La forma en que lo implementemos depende de qué distribución usemos. Algunas distribuciones permiten al usuario root (como OpenSUSE, sombrero rojo , o sombrero ), mientras que algunos no lo hacen (como Debian y ubuntu ).

Usar el comando sudo es simple en su forma más básica. Por ejemplo, tenemos que ejecutar dpkg para instalar una pieza de software. Si simplemente ejecutamos el dpkg -i software.deb comando como usuario estándar, recibiremos un mensaje de error indicando que el usuario no tiene permisos para ejecutar el comando.

Es por eso que, de forma predeterminada, los usuarios estándar no pueden instalar varias aplicaciones en una máquina Linux. Si queremos instalar cualquier aplicación en la máquina Linux necesitamos tener los privilegios de superusuario.

En su lugar ejecutaremos el sudo dpkg -i software.deb comando para que podamos ejecutar la instalación exitosamente.

Instalación del comando sudo

El paquete del comando sudo está preinstalado en la mayoría de las distribuciones de Linux. Para confirmar que el paquete está instalado en nuestro sistema se deben seguir los siguientes pasos:

  • En primer lugar, abre nuestra terminal.
  • Escriba sudo y haga clic en el botón Intro.
  • Si tenemos el paquete sudo instalado en nuestro sistema nos mostrará un mensaje corto.
  • De lo contrario, lo notificaremos mediante un mensaje, es decir, el comando sudo no encontrado.
  • Si el paquete no está instalado, podemos instalarlo fácilmente aplicando el administrador de paquetes de distribución excesiva.

Instalar Sudo en Fedora y CentOS

 $ yum install sudo 

Instalar Sudo en Debian y Ubuntu

 $ apt install sudo 

sudo de linux

Comando para actualizar sudo

sudo de linux