【问题标题】:SSH and maxstartups confusionSSH 和 maxstartups 混淆
【发布时间】:2016-01-12 18:01:46
【问题描述】:

在 sshd_condifg 我设置了以下条目:

maxstartups 50:100:50
clientalivecountmax 3
maxauthtries 3

但在ps 结果中,我至少可以看到如下所示的进程:

ps -fe|grep aaa_test
(...)
root     11014  5023  0 Oct13 ?        00:00:00 sshd: aaa_test [priv]
root     11164 11014  0 Oct13 ?        00:00:00 sshd: aaa_test@notty
(...)
ps -fe|grep notty|wc -l
245

为什么会这样?如何限制用户使用相同的username 最多打开 3 个连接,总共最多打开 50 个连接(所有用户)?

【问题讨论】:

    标签: linux unix ssh openssh sshd


    【解决方案1】:

    根据手册,您可以简单地使用maxstartups 50,这将等同于您的行并且更具可读性。

    但进一步阅读,您会发现此限制仅适用于

    最大启动次数

    指定 SSH 守护程序的最大并发未经身份验证的连接数。 [...]

    选项ClientAliveCountMax 用于与您想象的完全不同的事情。查看手册页:

    ClientAliveCountMax

    设置 client alive 消息(见下文)的数量,这些消息可以在 sshd(8) 未从客户端接收任何消息的情况下发送。 [...]

    它没有指定任何关于并发的内容。

    如果我是对的,则无法将经过身份验证的用户限制在 ssh 级别。但是您可以在应用程序级别上使用一些全局.profile bash 脚本或 ssh 中的ForcedCommand 选项,这将计算系统上现有的连接并根据结果允许或拒绝继续。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-11
      • 2021-04-10
      • 2021-11-06
      • 2011-12-04
      • 2013-01-02
      • 2018-06-01
      • 2010-12-02
      相关资源
      最近更新 更多