openSSH连接到远程服务器时,我遇到了更奇怪的问题。 我可以用userID和密码连接它,但是当我使用公钥authentication时,它在putty.log中显示以下行并退出。
=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2011.06.02 13:44:04 =~=~=~=~=~=~=~=~=~=~=~= Using username "******". Authenticating with public key "comment-----" Last login: Wed Jun 1 17:27:13 2011 from ****.com
然后,腻子退出。
我通过不同的职位,他们谈论壳cmd和其他东西,我现在失去了。
这两台机器都运行在openssh的窗口中。 任何人都可以引导我从现在开始
任何帮助表示赞赏。
当您使用“保存公钥”button而不是OpenSSH密钥时,Puttygen生成SSH2 aka Tectia或ssh.com公钥。 不同的服务器需要不同types的密钥。
在puttygen中加载你的私钥文件,并从标签为'粘贴到OpenSSH authorized_keys文件的公钥'对话框中复制看起来像这样ssh-rsa AAAAB3... 的行 。

OpenSSH公钥
ssh-rsa AAAB3NzaC1yc2EAAAABJQAAAIBQ2Si6NjLR40YTI+9Z/TTBSYUykO1RjAX3GA2Zs15v7wiBVz3JoeLXFAmXRApdWCHCsmZIAjiX+qC0Ks1MY4suphDQv1ZfJE1xmhRwqr7h4f+/i0QmGI05lr/yJqwSashUIF4YWqgC14ov57VtaiCp//GTU29exME/JX3FzzxVmw== rsa-key-20110602
ssh.com公钥
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "rsa-key-20110602" AAAAB3NzaC1yc2EAAAABJQAAAIBQ2Si6NjLR40YTI+9Z/TTBSYUykO1RjAX3GA2Z s15v7wiBVz3JoeLXFAmXRApdWCHCsmZIAjiX+qC0Ks1MY4suphDQv1ZfJE1xmhRw qr7h4f+/i0QmGI05lr/yJqwSashUIF4YWqgC14ov57VtaiCp//GTU29exME/JX3F zzxVmw== ---- END SSH2 PUBLIC KEY ----
我认为你的公钥和/或私钥可能是腐败的。
你是说服务器也使用Windows? 在这种情况下,我不知道在哪里寻找密钥,但通常他们被称为id_rsa和id_rsa.pub 。 什么是id_rsa.pub ? 什么是在文件authorized_keys ?
检查服务器上的authorized_keys文件 – 服务器可能会根据您用来validation的密钥强制执行一个命令,这可以解释使用公钥而不是密码login时的不同行为。
要检查这个看起来在文件中的某个地方的command=string。
另一种可能性是authorized_keys文件本身的权限。 就像你在windows上一样,我对这个方面并不熟悉,但是在* nix的世界里,如果ssh守护进程看到你的authorized_keys文件是世界可读的,它就会拒绝遵守它。