在 limit.conf 中为用户设置 maxlogins 限制是否有任何实际原因?有什么好处?

在 limit.conf 中为用户设置 maxlogins 限制是否有任何实际原因?有什么好处?

为什么我要设置maxlogins限制/etc/security/limits.conf?换句话说,是否可以获得任何与性能相关和安全相关的好处?

我的计算机上只有 3 个用户,但很多天其中一个用户的活动会话数超过 15 个。他们还喜欢使用tmux,并且每个分割窗口在( 或)的输出中tmux都算作 1 。但我确实看到,对于他们所做的事情,他们需要同时激活许多会话(他们同时运行多个任务,同时在另一个窗口中编写代码并在其他窗口中进行监视)。sessionwwhohtop

我是否有任何理由应该将该特定用户(甚至所有用户)的登录次数限制为 5 或 10 次?为什么以及为什么不呢?

我怀疑这种做法是否会带来任何与性能相关的收益,但我很想知道为什么maxlogins很重要。

答案1

这是为 Oracle 安全准则添加限制的一个论据(并且适用于所有系统):

限制同时用户登录可以使系统免受因过多登录而导致的拒绝服务问题。自动登录进程操作不当或恶意可能会导致大量同时登录会话。

摘自 Oracle Linux 6 安全技术实施指南规则 IDSV-65325r2_rule

答案2

在共享系统上,较低的最大登录数可能有助于防止任何一个用户使用不成比例的有限资源。这将使系统对其他用户更可用(因为他们仍然可以使用 pty、内存等),但代价是对高级用户(他们可能需要自己的专用系统,但这并不是一场新的辩论)。

例如,一个糟糕的高级用户可能会编写一些有缺陷的东西,消耗所有 pty 并阻止其他用户登录;如果设置了 maxlogins,他们的错误脚本就不太可能破坏公共资源。如果每个人都有自己的个人桌面,他们可以根据自己的需要自由使用(除非所述桌面对共享网络做了一些顽皮的事情......),那么这一点就不那么重要了,但在有大量学生的情况下,这可能是至关重要的共享使用单个服务器。

答案3

我的第一个想法是,如果您处于一个注重安全的环境中,您可能希望将登录限制在合理且可理解的水平内,例如,如果您知道某人平均每天仅登录 3 次,那么一天中他们登录 10 次是不寻常的,也是异常值。因此,这可能表明他们的登录活动存在可疑行为。

我知道人们在云环境中构建了许多系统,在这些系统中,API 使用情况会在一段时间内被跟踪和平均,一旦违反 API 使用上限(超出正常使用范围),他们就会被锁定在帐户之外/严重受到限制,直到管理员可以验证没有发生任何奇怪的情况。

相关内容