我访问SSH到Openshift时遇到问题。 我仍然可以通过Git将代码推送到Openshift。但是当尝试SSH到Openshift时,服务器拒绝错误“没有可用的支持身份验证方法(服务器发送:公钥,gssapi-keyex,gssapi-with-mic”。我正在使用Windows 7。
你知道问题是什么以及如何解决它?
答案 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)
我们需要两个工具来处理:
第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 认证