如何限制用户可以使用的连接数?

如何限制用户可以使用的连接数?

greedyprocess我有一个始终以用户身份运行的进程,它使用了太多的 NAT 连接。它们并没有占用太多带宽,而是堵塞了路由器的 NAT 表。是否可以将用户限制为 1000 个打开的连接?我更希望对可以打开的greedyuser套接字数量进行某种内核限制。greedyuser

服务器运行 debian jessie(撰写本文时为稳定分支)。不,我无法绕过 NAT,因为我无法控制路由器。

用户的打开文件限制为 166,384,如果可能的话,我宁愿不降低这个限制。我只想限制打开的套接字,而不是所有打开的文件。

答案1

iptables使用connlimitowner扩展可能会有帮助。类似的东西(未经测试):

iptables -A OUTPUT -m owner --uid-owner greedyuser -m connlimit --connlimit-above 1000 -j REJECT 

相关内容