Tengo una cuenta de nivel de servicio para ejecutar mi servidor web y este usuario está configurado con /sbin/nologin
.
Normalmente, cuando agrega un usuario a un grupo, debe cerrar sesión e iniciar sesión para utilizar los permisos del nuevo grupo.
Me gustaría agregar este usuario a otro grupo para ampliar algunos de sus permisos, pero dado que el usuario de mi servidor web nunca inicia sesión, ¿cuándo o cómo obtendrá acceso el usuario a los permisos del nuevo grupo?
Respuesta1
Los grupos del proceso los establece el programa que cambia de usuario raíz al usuario objetivo antes de ejecutar el programa del proceso. Cuando un usuario inicia sesión, el programa que cambia al usuario es el programa de inicio de sesión ( login
,,, …) y el programa su
del sshd
proceso es el shell del usuario. Para un demonio que se ejecuta bajo el usuario del sistema, el programa que cambia el usuario puede ser su
alguna otra herramienta como Debian.start-stop-daemon
. Por ejemplo, start-stop-daemon
siempre agrega los grupos suplementarios al proceso. El programa de cambio de usuario debe tener lógica para configurar tanto el grupo primario de la base de datos de usuarios como el grupo suplementario de la base de datos de grupos.
Respuesta2
Con CentOS 6 nscd
podría estar ejecutándose. Si no cambió la propiedad del grupo mediante un comando de alto nivel (como usermod
), debe asegurarse de ejecutarlo grpconv
para que /etc/gshadow también se actualice. Si nscd
se está ejecutando, agregue nscd -i group
para invalidar el caché del grupo local. Si cambió el GID principal, ejecute nscd -i passwd
.
Comprueba el resultado con id -a $ACCOUNT
.
Después de eso, reinicie su servicio.
Respuesta3
Sugiero su-; /etc/init.d/NOMBRE detener; /etc/init.d/NOMBRE inicio;
"/etc/init.d/NAME reiniciar" puede no ser suficiente.