我正在管理用户通过NIS进行身份验证的网络环境。除一台计算机外,所有计算机均可用于SSH进入服务器。在有问题的机器上,我收到消息
ssh: connect to host servername port 22: Connection refused
我比较strace
了有问题的计算机和可以通过SSH正确连接到服务器的计算机的输出。
事实证明,无法SSH进入服务器/etc/hosts
的计算机不会进行咨询,而能够正确进行SSH的计算机则会进行咨询。两台机器都/etc/hosts
设置了服务器的名称和IP。最后,不进行协商的计算机/etc/hosts
最终尝试连接到 127.0.0.1
(localhost),并出现上述消息而失败。是什么原因造成的?
附加信息:
- 我尝试通过SSH进入的服务器也充当了名称服务器,并且两台机器在尝试通过SSH进入服务器时均会查询该服务器。
- 当我这样做时,无法SSH到服务器的机器可以正确地SSH到其他机器
ssh machinename
。strace
日志显示该机器正在查询名称服务器(这次成功)并设法正确解析远程计算机名称并连接到该计算机。
编辑:我很乐意提供您认为可能有助于解决此问题的所有其他信息。
1
将-vvv添加到ssh命令后会得到什么?
—
混沌守护进程