En CentOS (probado en 7.x):
Crear archivo /etc/systemd/system/nginx.service.d/override.conf
con los siguientes contenidos:
[Service]
LimitNOFILE=65536
Vuelva a cargar el demonio systemd con:
systemctl daemon-reload
Agregue esto al archivo de configuración de Nginx:
worker_rlimit_nofile 16384; (has to be smaller or equal to LimitNOFILE set above)
Y finalmente reinicie Nginx:
systemctl restart nginx
Puedes verificar que funciona con cat /proc/<nginx-pid>/limits
.
Encontré la respuesta en unos minutos después de publicar esta pregunta...
# cat /etc/default/nginx
# Note: You may want to look at the following page before setting the ULIMIT.
# http://wiki.nginx.org/CoreModule#worker_rlimit_nofile
# Set the ulimit variable if you need defaults to change.
# Example: ULIMIT="-n 4096"
ULIMIT="-n 15000"
/etc/security/limit.conf
es utilizado por PAM, por lo que no debería tener nada que ver con www-data
(no es un usuario de inicio de sesión).