我正在尝试从 Windows 客户端连接到 NX 服务器,但它报告以下异常 NX> 203 NXSSH running with pid: 5404 NX> 285 Enabling check on switch command NX> 285 Enabling skip of SSH config files NX> 285 Setting the preferred NX options NX> 200 连接到地址:10.43.51.77 端口:22 NX> 202 身份验证用户:nx NX> 208 使用身份验证方法:公钥 NX> 204 身份验证失败。
我已经在服务器上重新生成了 default_dsa.key 并为客户端导入了相同的内容,但仍然无法正常工作。
有什么解决办法吗?
这种事情可能有多种原因;最好的办法是为您的 NX 服务器启用详细日志记录:
编辑 /etc/nxserver/node.conf 并
取消注释/更改以下内容:
ENABLE_PERSISTENT_SESSION="全部"
NX_LOG_LEVEL=7
NX_LOGFILE=/var/log/nxserver.log
确保用户 nx 可以写入 /var/log/nxserver.log
重新启动 NX 服务器并尝试再次从 Windows 登录;您现在应该在 nxserver.log 中有详细的消息。
如果您遇到身份验证问题,/var/log/secure 也可能有一些有用的信息。
IIUC,您需要确保在 NX 服务器本身的每个用户的 authorized_keys 密钥环上都有 NX 公钥。运行 nxserver --usercheck 并查看它是否验证正常。
这似乎是一个关键问题。尝试获取 NX 客户端的默认 SSH 密钥并将 ssh 与该密钥一起使用到您的 NX 服务器。如果它失败并且您被要求输入密码,那么肯定是密钥不匹配。尝试使用 ssh-kyegen 为客户端和服务器创建自己的自定义密钥。尝试将公钥放在 NX 的配置目录和 nx 用户的 .ssh/authorized_keys 文件中。如果自定义密钥有效,请尝试安装相同版本的客户端和服务器。