¿Con qué usuario debo ejecutar servidores web, redis y mongodb?


8

En este VPS hay tres usuarios: root, another_one, nobody. Todos los archivos del servidor web, configuraciones, etc. son propiedad de root. Sin embargo, tengo dudas sobre lo que se refiere a ejecutar cosas. Si uso root para el servidor web, puedo exponer el sistema a agujeros de seguridad, mientras que si intento iniciar sesión nobodyme pide una contraseña que nunca configuré y no lo sé. ¿Debo crear otro usuario más?

Por ahora solo estoy seguro de nginx: lo ejecuto como root y genera procesos como nadie. Pero, ¿qué pasa con los servidores web y otros servicios como db y redis?

Nota: Debo mencionar que another_user puede sudo, por lo que no es tan diferente de root.

Respuestas:


9

Siempre ejecuto servicios con un usuario dedicado. Entonces crearía estos usuarios:

  • nginx
  • mongo
  • apache
  • mysql
  • redis

¡Nunca debe ejecutar los servicios reales como root!

A menudo, al instalar estas aplicaciones utilizando su administrador de paquetes de distribución, como parte de la instalación, se creará automáticamente un usuario para cada uno de estos servicios.

Normalmente uso CentOS / RHEL y cuando instalo cosas como Apache, el usuario "apache" se crea automáticamente en ese punto. Así también para MySQL y Nginx.


¡Bien gracias! Sí, al instalar redis, por ejemplo, descubrí que también redisse creó un usuario. Seguiré este consejo, gracias.
— rubik

¡Ahora estoy configurando cosas y con múltiples usuarios configurar permisos específicos es más fácil!
— rubik

Me gusta este enfoque. Por curiosidad, ¿cuál es su estrategia para los grupos? ¿Tienes un grupo de servicios? ¿O mantiene un grupo separado para cada usuario del servicio?
— Patrick M

@PatrickM - grupos separados. Los servicios deben estar separados tanto como sea posible entre sí.
— slm

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.