我遇到了必须通过 puTTY 访问 Linux 机器的情况。我对 SSH 进行了各种尝试,但未能连接到该机器。然后我意识到我的同事正在以 root 用户身份访问同一台 Linux 机器,而我也想以 root 用户身份访问。我让他注销,以便我可以以 root 身份登录。有没有办法限制 linux 操作系统上的 SSH 登录次数?这是某种安全功能,可以区分基于 Windows 的操作系统和基于 linux 的操作系统。
你可能/etc/security/limits.conf
像这样设置了限制
root hard maxlogins 1
Run Code Online (Sandbox Code Playgroud)
如果需要,将限制 (1) 更改为更高的值。
是的,可以限制并发登录会话的数量,尽管大多数 Linux 发行版不会在其默认设置中强加此类限制。
Linux 在设计上是合适的多用户系统,通常情况下,为同一用户创建多个并发 SSH 会话应该不会有任何问题。
SSH 服务器可以MaxSessions
通过配置文件中的选项施加此类限制。通过 PAM,您可以施加这些限制以及其他人已经指出的限制。
试图说服独立sshd
守护进程限制会话数量充满了漏洞。诸如MaxSessions
限制OP所谈论的内容之外的东西之类的事情。在 linux 上会sshd
被忽略limits.conf
(login.conf
在 FreeBSD 上也类似),除非您正确配置以通过 PAM 路由所有传入会话,并使用正确配置的 PAM 模块首先检查 limit.conf 等内容。很难让它正常工作。
另一方面,如果您不作为独立守护进程启动,那么您可以使用按需sshd
生成的“事物”中的限制功能。sshd
例如,inetd
具有xinetd
连接限制功能(通常默认不对分叉子项的数量实施任何限制)。在经典中inetd
,它被称为“max-child”。使用xinetd
,查找instances
配置旋钮。例如inetd
样式:
ssh stream tcp nowait/3 root /usr/sbin/sshd sshd -i -4
Run Code Online (Sandbox Code Playgroud)
这将并发 ssh 连接数限制为 3。
对于那些如此倾向于的人,systemd
可以替换 的功能inetd
,并且我相信有一种方法可以限制服务的实例数量。留给读者的练习(或添加包含详细信息的评论!)。
归档时间: |
|
查看次数: |
80367 次 |
最近记录: |