x2go 密码提示然后身份验证失败

x2go 密码提示然后身份验证失败

读过下面的文章,虽然标题相似,但问题并不相同: 可以通过 SSH 连接,但不能通过 x2go 连接

从家用的 windows 7 客户端和 windows 10 客户端到 centOS6.7 远程服务器 OVH x2go 客户端安装程序“x2goclient-4.0.5.0-2015.07.31-setup.exe”下载自: http://code.x2go.org/releases/binary-win32/x2goclient/releases/4.0.5.0-2015.07.31/ PuTTY 连接 rsa2 密钥设置没有问题,无密码密钥和有密码密钥均适用,sshd_conf 指定为无密码登录。首次设置 x2go 时,使用 yum 安装 x2goserver 包并按照本教程操作: https://www.howtoforge.com/how-to-install-x2goserver-on-centos-7-as-an-alternative-for-vnc

尝试通过 x2go 客户端连接时:

  • 它提示“输入密码来解密密钥”
  • 如果给出了密码,它会再提示两次,然后输出“验证失败”
  • 如果重新开始,它会要求输入用户名和用户密码。

如果我取消第一个提示而不是输入密码,结果是一样的,只是跳过了另外 2 个提示。还尝试将 PasswordAuthentication 更改为 yes(在 sshd_conf 服务器端)以进行测试,无需密钥,结果是一个错误框,在我的防病毒程序 (avg) 启动并撕毁系统的 x2go 客户端安装(据称包含未知威胁)后不到一秒钟,该错误框就消失了。

答案1

我知道这已经是几年前的事了,但我在这里找到了解决问题的方法。http://www.procmind.com/blog/2015/11/21/x2go-and-ssh-ecdsa-keys/问题似乎是,当执行以下操作时,较新版本的 openssh 会生成 ECDSA 密钥。

ssh-keygen -t rsa

解决方案是创建一个像这样的旧式 rsa 密钥。

ssh-keygen -m PEM -t rsa -b 4096

因此,显然,x2go 不支持新的 ECDSA 密钥。此外,我认为旧的 dsa 密钥由于安全漏洞而不再受支持。

答案2

已解决:愚蠢的错误,我试图通过在首选项中指定它来加载 .ppk 格式的密钥,解决方案是使用 Pageant 并在首选项中将其设置为“尝试自动登录”。

答案3

遇到了同样的问题,Windows 无法使用 SSH 密钥连接到远程 Linux 客户端。即使直接从 PuTTY 运行 Pageant 或运行附带的 X2GO Pageant 进行自动登录也不会使用我的 Windows PPK 格式的 ssh 密钥。我不得不使用我的 Linux 格式的 ssh 密钥。一旦我在 X2GO 客户端配置中使用它,我就可以再次成功连接到我的 Linux 客户端,使用更安全的 ssh 隧道而不是密码验证。

将 PuTTY 格式的 SSH 转换为 Linux 格式的 SSH:

将您的 PPK 复制到您的 Linux 机器运行以下命令,并将该输出文件复制回您的 Windows 机器 chmod 400 ssh-keygen -i -f > linuxstylekey

答案4

在 Windows 中,如果我使用 cygwin 的 ssh-keygen 来生成密钥,那么 x2goclient 会不断要求我输入密码..!!

解决方案:我遵循了官方手册,现在可以使用密钥连接到 ssh。问题是我们必须在 Windows 中使用 x2go 附带的 ssh-keygen,而不是其他的(在 Windows 中至少如此)。

Windows 客户端

启动命令提示符并导航到 x2goclient 文件夹,在此示例中为 C:\Program Files\x2goclient。

首先,我们生成一个 DSA 密钥对(如果您想要 SSO,请使用空密码短语):

C:\Program Files\x2goclient>ssh-keygen.exe -t dsa ....

https://wiki.x2go.org/doku.php/wiki:advanced:authentication:passwordless-ssh

相关内容