无密码ssh身份验证失败,因为“无法加载主机密钥”

时间:2012-11-12 21:13:33

标签: authentication permissions ssh private-key

无法设置ssh无密码身份验证


我无法使用Windows客户端到UBuntu服务器的无密码身份验证进行ssh。 UBuntu上的ssh版本是OpenSSH_5.8p1 Debian-7ubuntu1,OpenSSL 1.0.0e,而Windows客户端上的SSH是OpenSSH_5.1p1,OpenSSL 0.9.8k。我打开ssh调试并在服务器和客户端注意到这些消息:

/usr/bin/sshd -d -p 2222 on server

adminuser@server:~/.ssh$ /usr/sbin/sshd -d -p 2222

debug1: sshd version OpenSSH_5.8p1 Debian-7ubuntu1

debug1: could not open key file '/etc/ssh/ssh_host_rsa_key': Permission denied

Could not load host key: /etc/ssh/ssh_host_rsa_key

debug1: could not open key file '/etc/ssh/ssh_host_dsa_key': Permission denied

Could not load host key: /etc/ssh/ssh_host_dsa_key

debug1: could not open key file '/etc/ssh/ssh_host_ecdsa_key': Permission denied

Could not load host key: /etc/ssh/ssh_host_ecdsa_key

debug1: setgroups() failed: Operation not permitted

debug1: rexec_argv[0]='/usr/sbin/sshd'

debug1: rexec_argv[1]='-d'

debug1: rexec_argv[2]='-p'

debug1: rexec_argv[3]='2222'

Set /proc/self/oom_score_adj from 0 to -1000

debug1: Bind to port 2222 on 0.0.0.0.

Server listening on 0.0.0.0 port 2222.

debug1: Bind to port 2222 on ::.

Server listening on :: port 2222.

debug1: Server will not fork when running in debugging mode.

debug1: rexec start in 5 out 5 newsock 5 pipe -1 sock 8

debug1: inetd sockets after dupping: 3, 3

Connection from 10.221.84.65 port 2414

debug1: Client protocol version 2.0; client software version OpenSSH_5.1

debug1: match: OpenSSH_5.1 pat OpenSSH*

debug1: Enabling compatibility mode for protocol 2.0

debug1: Local version string SSH-2.0-OpenSSH_5.8p1 Debian-7ubuntu1

debug1: list_hostkey_types: 

No supported key exchange algorithms

debug1: do_cleanup

debug1: do_cleanup


ssh -vvv on client

C:\Documents and Settings\clientuser>ssh -vvv -p 2222 adminuser@server.com

OpenSSH_5.1p1, OpenSSL 0.9.8k 25 Mar 2009

debug2: ssh_connect: needpriv 0

debug1: Connecting to server.com port 2222.

debug1: Connection established.

debug1: identity file /cygdrive/c/Documents and Settings/clientuser/.ssh/identity type -1

debug3: Not a RSA1 key file /cygdrive/c/Documents and Settings/clientuser/.ssh/
id_rsa.

debug2: key_type_from_name: unknown key type '-----BEGIN'

debug3: key_read: missing keytype

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug3: key_read: missing whitespace

debug2: key_type_from_name: unknown key type '-----END'

debug3: key_read: missing keytype

debug1: identity file /cygdrive/c/Documents and Settings/clientuser/.ssh/id_rsa
type 1

debug1: identity file /cygdrive/c/Documents and Settings/clientuser/.ssh/id_dsa
type -1

debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8p1 Debia
n-7ubuntu1

debug1: match: OpenSSH_5.8p1 Debian-7ubuntu1 pat OpenSSH*

debug1: Enabling compatibility mode for protocol 2.0

debug1: Local version string SSH-2.0-OpenSSH_5.1

debug2: fd 3 setting O_NONBLOCK

debug1: SSH2_MSG_KEXINIT sent

Read from socket failed: Connection reset by peer

我验证了主机上authorized_keys,.ssh等的权限是正确的。我重新生成主机密钥以解决'无法加载主机密钥'并重新启动ssh服务,但问题仍然存在。什么可能是错的任何建议?主机私钥无法加载,因为它们归“root”用户所有。不允许将其权限更改为模式600以外的任何其他权限。我被困在这一点..请帮忙!欣赏它!

1 个答案:

答案 0 :(得分:0)

您需要以root sudo /usr/sbin/sshd身份运行SSH服务器才能读取服务器的私钥。