为什么我不能与一个服务器建立两个以上的 SSH 连接?

为什么我不能与一个服务器建立两个以上的 SSH 连接?

我在 CentOS7 AWS 实例上使用 Puppet PE 2017.3.5.0-1。当我通过 SSH 进入此机器时,对于默认安装,我只能获得两个连接。当我尝试再次连接(从第三个终端)时,连接会自动关闭。

我无法同时连接两次以上。我正在使用多路复用。

/etc/ssh/sshd_config我看到其中有一个设置MaxSessions 2,我非常怀疑这与此有关,但调整并没有帮助。

答案1

问题在于/etc/ssh/sshd_config其中有一个条目MaxSessions。如果将其设置为数字1,则表示禁用多路复用。如果将其设置为0,则表示完全禁止登录/shell/子系统会话。请参阅此处获取更详细的答案https://unix.stackexchange.com/questions/26170/sshd-config-maxsessions-parameter

一旦您将此设置调整为 2 或更多(在这种情况下大于 2),或者将整行注释掉,您就已经正确地调整为大于 2 个多路复用连接了。

对我来说,问题在于,调整这些设置后,我仍然无法连接超过 2 个,即使我完全断开连接并再次尝试。

我发现解决方案是您需要打开 中列出的套接字目录.ssh/config(例如.ssh或 ).ssh/cm_socket,然后删除套接字,因为它保留了此信息。删除套接字后,请确保您已重新启动 sshd 守护程序,然后您的新设置将生效。

相关内容