¿Qué significa y qué significa sudo?

«¿Alguien puede decirme qué significa sudo?» Estoy aprendiendo Linux. Busqué en Google, pero ¿alguien puede darme una comparación de Windows ? Creo que esto me ayudará un poco. Sé que su significa cambiar de usuario. sudo es otro usuario, pero ¿cómo y por qué? ¿Por qué «no puede simplemente darse permisos con su nombre de usuario?

Comentarios

  • En Windows, si no ‘ No tiene derechos de administrador, debe proporcionar el nombre y la contraseña para una cuenta que también los tenga. Por supuesto, puede darse permiso con su nombre de usuario, simplemente no es inteligente hacerlo, como cualquier programa que su ejecución puede modificar cualquier cosa para la que tenga permiso. Esa es una de las razones por las que Windows no ha sido seguro durante tanto tiempo.
  • @KnowledgeBeyondMe: ¿Qué pasa con el tema de la pregunta? Por favor, cámbielo a algo significativo.
  • Ok, déjame ver si entiendo esto. En lugar de que las personas tengan cuentas de administrador, todos tienen el potencial de ser administradores usando el nombre de usuario sudo. Sin embargo, al usar ese nombre de usuario sudo, tu las acciones se registrarán de nuevo para ti porque es una especie de infierno en tu cuenta de nombre de usuario real. Si es así, realmente me gusta. Ahorra toneladas de tiempo. No ‘ No tengo que esperar a que alguien con retretes se acerque a usted para agregar software e impresoras y demás.

Responder

sudo le permite ejecutar un programa como superusuario root . Utilizándola en lugar de su,

  1. no es necesario que conozca la contraseña de root porque solicita su contraseña,
  2. usted sabe explícitamente qué comandos se ejecutarán como root y cuáles otros como usted. Si usa su, tiene un shell y puede ejecutar inadvertidamente algunos programas (peligrosos), y
  3. todas sus acciones se registran en el auth.log archivo. Las acciones en un shell, como una iniciada por su no suelen registrarse .

¿Por qué «no puedes simplemente darte permisos con tu nombre de usuario?

Para razones de seguridad, la cuenta raíz rara vez se usa para fines cotidianos . Por lo general, todos los usuarios, incluidos los administradores, usan un usuario «normal» y solo ejecutan comandos como root cuando sea necesario. Esto puede evitar (1) el acceso no autorizado a archivos de otros usuarios, (2) acciones de root no registradas y (3) problemas causados por la ejecución de programas «peligrosos».

Hay es una analogía en Wikipedia que puede considerar:

  • Usar una cuenta root es como ser Superman; un administrador habitual el usuario se parece más a Clark Kent. Clark Kent se convierte en Superman solo el tiempo que sea necesario para salvar a la gente. Luego vuelve a su «disfraz». El acceso raíz debe usarse de la misma manera. Sin embargo, el disfraz de Clark Kent realmente no lo restringe, ya que aún puede usar sus superpoderes. Esto es análogo al uso del programa sudo.

Comentarios

  • Usar sudo es como ser Goofy hasta que te comes un supercacahuete que te convierte en Super Goof. Tus superpoderes desaparecen después de un tiempo de espera (predeterminado 15 minutos), después de lo cual se le solicitará un nuevo cacahuete … er, su contraseña.
  • De acuerdo, déjeme ver si lo entiendo. En lugar de que las personas tengan cuentas de administrador, todos tienen el potencial de Sea un administrador usando el nombre de usuario de sudo. Sin embargo, al usar ese nombre de usuario de sudo, sus acciones se registrarán nuevamente para usted porque es una especie de infierno en su cuenta de nombre de usuario real. Si es así, realmente me gusta. Ahorra toneladas tiempo. No ‘ no tiene que esperar a que alguien con retretes se acerque a usted para agregar software e impresoras y demás.
  • @KnowledgeBeyondMe Todos tienen la potente ial para ser administrador, pero aún debe estar autorizado al aparecer en /etc/sudoers. Hay algunas otras ventajas de sudo sobre su, pero el punto principal de sudo es que se autentica con su propia contraseña. Las contraseñas compartidas son malas.
  • Debe autorizar a las personas, incluyéndolas en /etc/sudoers o utilizando otras técnicas , para ejecutar sudo. Por lo general, no autoriza a todas las personas, solo a los administradores del sistema.

Responder

Por defecto en la mayoría de Unices , la cuenta de «administrador», root, debe usarse con moderación. Solo hay dos niveles de derechos de administrador, o «superusuario», en un sistema Unix normal: o tienes el control total de todo , o no.

«Control total» incluye eludir la mayoría de los controles de permisos y estropear completamente el sistema con un simple error de escritura. Como usuario normal, como máximo puede eliminar solo sus propios archivos.

La antigua utilidad su se usa junto con la contraseña de root para asumir la identidad de root, pero también puede usarse para asumir las identidades de otros usuarios, o para ejecutar comandos individuales como ellos, dado que pertenece al grupo de usuarios correcto y conoce sus contraseñas.

su es comúnmente usado por el usuario root (en algunos sistemas Unix) para iniciar demonios (procesos de servicio) que necesitan ejecutarse bajo identidades de usuario particulares para protegerlos del acceso a áreas a los que no deberían tener acceso (normalmente servidores web, servidor SSH y similares). Esto se puede hacer en los scripts de inicio mientras el sistema se inicia.

su rara vez se usa de forma interactiva (en la línea de comandos).

La utilidad sudo requiere un poco más de configuración, ya que permite a un usuario ejecutar comandos como otro usuario usando su propia contraseña (lo que significa que una contraseña de root, por ejemplo, no necesita ser compartida), y también permite un control detallado de quién puede hacer exactamente qué. Se podría, por ejemplo, dar a un solo usuario, oa todo un grupo de usuarios, la capacidad de montar un determinado disco, pero no de desmontarlo o montar cualquier otro disco, o instalar software usando comandos específicos, etc. De nuevo, el sudo La utilidad permite asumir las identidades de otros usuarios (no solo root) para sesiones interactivas, o para ejecutar comandos individuales (si la configuración ha sido establecida de esta manera por otra persona con root permisos).

Por lo general, se ejecutarían comandos únicos usando sudo (de ahí el nombre «superuser do»):

$ sudo apt-get install vim 

o

$ sudo shutdown -ph now 

Se prefiere usar sudo de esta manera a usar sudo -s y trabajar con un shell raíz interactivo, porque los comandos que ejecuta están registrados. Más tarde se puede volver sobre las acciones en el archivo de registro para ver dónde (y quién) hizo algo, ya sea por depuración o para auditar.

Si se encuentra typi en un indicador de root interactivo durante un período de tiempo prolongado, entonces debería reconsiderar lo que está haciendo y si eso realmente requiere privilegios de root.

Como ejemplo, la única vez que aparece un indicador raíz interactivo cuando agrego un usuario común para mí en una máquina recién instalada, o cuando realmente tengo algunos problemas serios que me impiden incluso iniciar sesión como un usuario común.


OpenBSD (desde la versión 5.8) tiene una utilidad llamada doas que reemplaza a sudo en la instalación predeterminada del sistema. Se desarrolló cuando quedó claro que sudo se había vuelto demasiado complejo para ajustarse a los objetivos establecidos por los desarrolladores de OpenBSD. Su uso es similar al de sudo, pero configurarlo es más fácil .

Respuesta

En las primeras versiones de Unix, el escenario más común era iniciar sesión a través de una terminal sin sistema de ventanas. El comando su (usuario sustituto) fue una forma conveniente de cambiar sus permisos actuales sin cerrar la sesión. Recuerde, sin un sistema de ventanas, cerrar la sesión significaba detener todo lo que tenía en ejecución.

Usar su para convertirse en root tiene algunos problemas molestos. La gente ocasionalmente se olvidaba de salir de la sesión y ejecutaba comandos accidentalmente como root. Cambiar la contraseña administrativa fue complicado por el hecho de que tenía que distribuirla a todos los que la necesitaban. La mayoría de los sistemas no registraban todos los comandos, por lo que era difícil saber quién había hecho qué como root. Y así sucesivamente.

sudo abordó esos problemas permitiendo que las personas ejecuten un solo comando como root. Proporciona una mejor auditoría y control a la vez que es un poco más conveniente para comandos únicos.

Respuesta

ok, déjame ver si entiendo esto. En lugar de que las personas tengan cuentas de administrador, todos tienen el potencial de ser administradores utilizando el nombre de usuario sudo. Sin embargo, al usar ese nombre de usuario de sudo, sus acciones se registrarán de nuevo para usted porque es un infierno fuera de su cuenta de nombre de usuario real. Si es así, me gusta mucho. Ahorra mucho tiempo. No tiene que esperar a que alguien con servicios privados se acerque a usted para agregar software e impresoras y demás.

Comentarios

  • sudo es una utilidad, no un nombre de usuario. Alguien aún tiene que otorgarle el derecho de usar sudo. El derecho puede estar restringido al uso de comandos particulares, o para usar sudo para asumir otras identidades de usuario particulares. sudo puede usarse para cambiar a otros roles además de root.
  • Oh, ¿entonces es como los grupos organizacionales de Active Directory? Tiene su propio nombre de usuario con privilegios, pero si se le otorgan permisos, puede acceder a los privados de una organización especializada. ¿El ORG en este sentido sería la utilidad SUDO?
  • Sin saber qué es un » Active Directory «, No puedo ‘ decir sí o no a eso con certeza.
  • Mecanismo de control de derechos y roles en Windows.
  • No, sudo no es un grupo o una cuenta de usuario. – En Windows, Active Directory y LDAP puede definir grupos de usuarios. En Linux, también puede definir grupos de usuarios. Por ejemplo, su linux normalmente tiene un grupo admin. Cada usuario puede pertenecer a un grupo principal y a varios grupos secundarios . – Puede autorizar el sudo a todos los miembros de un grupo . Si marca el /etc/sudoers, los grupos autorizados tienen un prefijo %.

Respuesta

sudo le permite ejecutar un programa como un usuario diferente (incluido el root) basado en un conjunto de reglas predefinidas y configurables.

Activado una raíz del sistema Unix / POSIX / Linux es dios. El usuario root también es singular.

En muchos entornos hay varios administradores que pueden requerir acceso root completo, pero también puede haber personas que requieran acceso para realizar alguna función específica normalmente reservada para root; Los administradores de bases de datos necesitan detener e iniciar servicios de base de datos, editar archivos de configuración de base de datos, los administradores de red necesitan configurar los dispositivos y las rutas de red, los administradores de seguridad necesitan gestionar certificados y configurar firewalls.

Al restringir los comandos que puede ejecutar una persona, sudo aplica el principio de privilegios mínimos: los usuarios no obtienen el acceso que no necesitan. Pero no se trata solo de restringir los binarios que ejecutan los usuarios. Muchas tareas de administración se llevan a cabo desde la línea de comandos, y los parámetros pasados a ese comando también pueden ser restringidos por sudo (o capturados en un script de shell con acceso proporcionado por sudo), por lo que es posible restringir los datos / dispositivos que estos especializados los administradores pueden acceder.

¿Por qué «no puede simplemente darse permisos con su nombre de usuario?

1) esto sería malo.

  • A menudo he tenido acceso a la cuenta raíz en los sistemas, pero siempre configuro una cuenta con nombre para usar para iniciar sesión , y solo «su» o «sudo» cuando quiero invocar explícitamente mis superpoderes. Además de evitar errores tontos, mi cuenta nombrada proporciona una zona de pruebas para cualquier componente que se comporte mal.

  • ¿Qué pasa si hay 5 personas que necesitan el acceso privilegiado, se lo concedo a todos y cada uno? ¿Qué tal 20? ¿Qué tal 200?

2) esto sería difícil

  • no es el modelo de seguridad de Unix. Seguro que puede cambiar los permisos en algunos ejecutables (consulte la nota anterior sobre los parámetros). Pero si es consciente de la seguridad, aplica parches con regularidad, lo que puede socavar un modelo de permisos personalizados (sudo OTOH mantiene sus permisos independientemente de los comandos en sí).

Comentarios

  • ahhh, esta es la razón por la que Linux es un poco más difícil de atacar. Menos personas con derechos. El atacante tendría que encontrar a la persona adecuada con los derechos adecuados. per se.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *