如何限制系统中每个用户的同时进程数?

OJ2*_*278 5 security linux debian

是的,我知道这个问题被问了很多次,但不幸的是我没有找到完整的答案。

那么,如何限制每个用户的并发进程数?

我找到了两个解决方案:

  1. 使用 pam_limits。在这种情况下,我需要配置 /etc/security/limits.conf 文件。不幸的是,这个解决方案只适用于 pam 感知应用程序,也就是说它不是通用的。

  2. 使用从 $HOME/profile 调用的 ulimit。不幸的是,它也不适用于所有情况。我尝试设置“ulimit -u 100”,然后在同一个 shell 中启动“stress --vm 200 --vm--bytes 100”。应用程序成功启动,我在 root 用户下获得了 200 多个进程。

我需要构建一个强大的系统,因此仅在某些情况下有效的解决方案是不合适的。

Jan*_*nen 2

内核安全补丁grsecurity有一个称为 的功能Enforce RLMIT_NPROC on execs。启用后,它会强制每个用户限制在系统范围内,而不是每个登录(或更糟,正如您所观察到的)。