¿Cómo restringir el número de procesos que puede iniciar un usuario?

10

Lo intentamos /etc/security/limits.conf, pero eso parece no tener ningún efecto.

La línea utilizada para limits.conf tiene el siguiente aspecto:

myuser hard nproc 6

Esa es la configuración para un servidor. Quiero limitar los procesos iniciados. Ulimit limita los procesos iniciados desde el shell (si lo entiendo bien). Pero en mi caso, Apache inicia procesos de servidor de mapas, y ese número tiene que ser limitado.

Mnementh
fuente
¿Cuál es la línea exacta que tienes en limits.conf? Actualice la pregunta con él si pudiera.
Ken Simon
Hay una pregunta similar sobre serverfault: ¿cómo limitar el número de procesos simultáneos?
Lekensteyn
Cierre sesión en todas las instancias de myuser antes de la prueba, ya que los límites se establecen al iniciar sesión. También vea esto ss64.com/bash/limits.conf.html
karthick87
2
/etc/security/limits.confes un archivo de configuración para el módulo pam_limits de PAM, pero Apache no genera procesos a través de PAM, por lo que no tendrá ningún efecto.
Kees Cook

Respuestas:

1

Esta no es la solución ideal porque puede interferir con las actualizaciones de apache, pero debería funcionar.

Edite /etc/init.d/apache2, en la parte superior del script (nueva línea después de #! / Bin / sh) agregue el ulimit requerido, por ejemplo:

ulimit -u 1024
João Pinto
fuente