GNU/Linux >> Tutoriales Linux >  >> Linux

¿Es mi trabajo como administrador de Linux eliminar los privilegios de root de las aplicaciones o el trabajo de los desarrolladores de aplicaciones?

Como administrador de Linux, ¿es uno de mis trabajos realizar algún tipo de tarea para eliminar los privilegios de root de las aplicaciones que se ejecutan en mis sistemas?

Sí. Es su trabajo asegurarse de que se haga. Si la aplicación no lo hace, debe darse cuenta de que la aplicación no lo está haciendo y hacerlo usted mismo.

¿O simplemente confío en los desarrolladores de aplicaciones para asegurarme de que han escrito su código para hacer esto?

No confíes en los desarrolladores de aplicaciones que han hecho nada. Hay muchas herramientas disponibles para un administrador de sistemas Linux para obtener los hechos de lo que hacen las aplicaciones en tiempo de ejecución.


Es deber del programador de la aplicación asegurarse de que la aplicación pierda los privilegios de root y funcione con derechos sin privilegios. Si la aplicación no hace esto, no hay nada que pueda hacer al respecto, aparte de abstenerse de usar la aplicación, enviar un informe de error al desarrollador o implementar los cambios necesarios en el código.

Por otro lado, eres , como administrador, que elige con qué usuario se inicia la aplicación; la regla de oro es nunca otorgar a un proceso más privilegios de los que necesita para ejecutarse. Para que pueda crear un usuario sin privilegios, eche un vistazo en /etc/passwd para tener una idea de las cuentas del sistema y ejecutar la aplicación como este usuario. (Rara vez tiene que hacer esto a mano; por lo general, todo esto se soluciona cuando instala un software a través del administrador de paquetes). la carrera, entonces está fuera de tu control.

Por ejemplo, versiones anteriores de sendmail requerido para ejecutar SUID root, lo que era un agujero de seguridad si un atacante remoto lograba explotar con éxito una vulnerabilidad del programa. Si tuvieras sendmail ejecutándose únicamente como retransmisión de correo, puede ejecutarlo como un usuario sin privilegios.


Diría que, como administradores de sistemas, es nuestro trabajo dar el menor privilegio posible a las aplicaciones y a los usuarios (que les permitan hacer su trabajo).

Un usuario que implementa aplicaciones o páginas web de Tomcat/Java, o que implementa una aplicación con acceso a la base de datos, rara vez tiene pocas o pocas necesidades legítimas de acceso raíz.

La mayoría de los marcos también eliminan la raíz por defecto hoy en día.

Por ejemplo, para los desarrolladores aquí que usan marcos Java, solo les damos acceso a los desarrolladores a un usuario sin privilegios capaz de implementar, y algunos comandos sudo están restringidos para (re)iniciar y detener algunos servicios clave.

Iría aún más lejos diciendo que no es asunto del equipo de desarrollo lidiar con los servidores de producción.

Según mi experiencia de vida, a menudo el equipo de desarrollo solo se preocupa por hacer su trabajo y no es capaz de hacer que la seguridad y la gestión de la capacidad sean correctas sin la planificación, la orientación y la intervención proactiva del equipo de administración de sistemas.


Linux
  1. Linux:¿cómo cambiar la contraseña de root olvidada?

  2. ¿Cómo eliminar los privilegios de raíz en los scripts de Shell?

  3. Linux:¿por qué el directorio raíz se indica con un signo /?

  4. Linux:¿la barra inclinada (/) forma parte del nombre del directorio raíz de Linux?

  5. Las 10 mejores aplicaciones de edición multimedia para Linux

Cómo proporcionar al usuario privilegios de root en Kali Linux

Administrador retrasado:quitar temporalmente los privilegios de administrador a los administradores

Las 5 mejores distribuciones de Linux para desarrolladores y programadores

Cómo cambiar la contraseña de root en Linux

Cómo cambiar la contraseña de la cuenta raíz de Linux VPS

Los 20 mejores lanzadores de aplicaciones Linux para mejorar su productividad