
Curiosamente, en mi derivado de Ubuntu con nginx instalado apt
, el www-data
usuario tiene un shell:
$ cat /etc/passwd
www-data:x:33:33:www-data:/var/www:/bin/sh
¿No debería establecerse esto en algo como /bin/false
? Aunque el usuario no puede iniciar sesión, ¿no es peligroso proporcionar un shell como este para un usuario del sistema de forma predeterminada?
Respuesta1
Bueno /bin/false
(o /bin/true
si eres una persona positiva) es un caparazón real - simplemente no es uninteractivoshell :-) También hay /sbin/nologin
en algunos sistemas que tiene el mismo propósito.
En cuanto a si su usuario de Apache necesita un shell interactivo (algo como bash
), la respuesta, como han dicho otros, es "Por lo general, no".
Configurar el shell del usuario de Apache en algo no interactivo es generalmente una buena práctica de seguridad (en realidad, todos los usuarios del servicio que no tienen que iniciar sesión de forma interactiva deben tener su shell configurado en algo que no sea interactivo).
Visite un entorno existente como el suyo, pruébelo y vea si algo falla.
Si nada se rompe, utilice el shell no interactivo de ahora en adelante.
Si algo se rompe, intenta arreglarlo.sinrestaurando el shell interactivo :-)