无法SSH到openshift

时间:2013-12-17 01:17:48

标签: ssh openshift

我访问SSH到Openshift时遇到问题。 我仍然可以通过Git将代码推送到Openshift。但是当尝试SSH到Openshift时,服务器拒绝错误“没有可用的支持身份验证方法(服务器发送:公钥,gssapi-keyex,gssapi-with-mic”。我正在使用Windows 7。

你知道问题是什么以及如何解决它?

8 个答案:

答案 0 :(得分:4)

这个答案适用于Windows用户。 谁使用puttygen.exe生成您的RSA密钥。 并且您通过Web控制台将PUBLIC密钥添加到您的Openshift帐户。 你可以在PUTTY中使用,但不能使用GIT-BASH的SSH(或者不能通过SSH进行git克隆)。

一个常见原因是puttygen.exe生成的密钥,是一个PUTTY特定文件。 您可以在puttygen.exe程序中将其转换为OPENSSH格式。 (菜单>转化>导出OpenSSH密钥) 将其保存到与原始PUTTY生成的PUBLIC / PRIVATE密钥对相同的目录中的新文件。

从〜/ .ssh / config文件中引用此OPENSSH键。 如果您没有此配置文件,请参阅此处的步骤4。 https://confluence.atlassian.com/display/BITBUCKET/Set+up+SSH+for+Git

通过打开GIT-BASH进行测试,并尝试使用特定的“ssh user@yourhost.rhcloud.com”(不含引号,以及用户和主机特定于您的帐户的位置)。如果有效,你应该好好去......

答案 1 :(得分:4)

简短版本: 删除领先的" ssh"来自OpenShift Web控制台提供的ssh url。

当我遇到这件事时,我感到很沮丧。我尝试了上面提到的所有事情。最后我放弃了Windows 7并打开了我的Ubuntu虚拟机。然后我注意到领先的" ssh"在网址中。

答案 2 :(得分:2)

我也在使用Windows 7,但我遇到了同样的问题。

我使用rhc工具创建了ssh密钥,然后使用putty的公钥(id_rsa.ppk)。他们的权限(GIT Bash,“ls -l”命令)是700(但我无法连接):

-rwx------+ 1 User123 None 1706 Mar  4 19:46 id_rsa
-rwx------+ 1 User123 None 1464 Mar  4 19:52 id_rsa.ppk
-rwx------+ 1 User123 None  394 Mar  4 19:46 id_rsa.pub

所以我将权限(使用 chmod 命令)更改为755:

-rwxr-xr-x+ 1 User123 None 1706 Mar  4 19:46 id_rsa
-rwxr-xr-x+ 1 User123 None 1464 Mar  4 19:52 id_rsa.ppk
-rwxr-xr-x+ 1 User123 None  394 Mar  4 19:46 id_rsa.pub

然后来自putty的git-bash和ssh开始工作。我知道这些不是最安全的权限,但对我来说这已经足够了。它也可能有助于以管理员身份运行git / putty,但我没有尝试过。

答案 3 :(得分:1)

您可能希望了解OpenShift论坛在no supported authentication methods available (server sent: public key, gssapi-keyex, gssapi-with-mic上提供的内容。红帽客户门户网站对此错误也有很好的article,但您需要Silver计划来查看此文章。

通常,在linux上出现此错误是因为您使用的密钥没有正确的权限。简而言之, .ssh / id_rsa 键的权限过于宽松(它们应该是600)。

请注意,其他人在使用OpenShift时遇到与此错误相关的similar问题,因此权限可能不是您特定问题的根本原因。

答案 4 :(得分:1)

在eclipse和ssh键菜单中转到首选项,单击KEY MANAGEMENT,然后单击一个rsa键选项卡,然后单击该按钮并单击按钮另存为私钥...然后转到您的打开班次应用程序粘贴你的公钥并对其进行处理......我希望它能正常工作

答案 5 :(得分:1)

Reference

工具

我们需要两个工具来处理:

  1. 腻子
  2. 的puttygen
  3. 方法

    第1步:生成全新的SSH-2 RSA密钥。

    第2步:在需要身份验证的host(例如,在Openshift的settings >> keys中)添加生成的密钥。

    第3步:PuTTYgen Conversions >> Export OpenSSH Key导出此密钥并将其保存在文件系统中

    第4步:添加/修改您的~/.ssh/config file

    // ~/.ssh/config
    Host HOST_NAME // for example - https://my-domain.rhcloud.com
      Port PORT_NUMBER // ideally 22
      IdentityFile PATH/TO/FILE/CREATED/IN/STEP/3 // the path to where the key was exported
    

    ~/.ssh/config

    的配置示例
    Host cool-websites.rhcloud.com
     Port 22
     IdentityFile C:/Users/cool_dude/Desktop/rhcloud
    
    祝你好运。

答案 6 :(得分:0)

您需要在Puttygen中创建密钥 - https://the.earth.li/~sgtatham/putty/latest/x86/puttygen.exe。格式 - SSH-2 RSA。 此键具有正确的格式。它有效。

答案 7 :(得分:0)

这个答案适用于Linux用户。如果您遇到同样的问题,禁用GSSAPI可能有所帮助。

修改您的~/.ssh/config(用户)或/etc/ssh/ssh_config(系统级)文件以设置GSSAPIAuthentication no

来源:Speed up SSH logon by disabling GSSAPIAuthentication

  

客户端有时会延迟连接SSH服务器   和服务器尝试解决他们是否应该使用GSSAPI   认证