调试 SSH 未连接

调试 SSH 未连接

我正在尝试使用 ssh 连接到远程服务器,但是我有Permission denied (publickey).

我已经讨论了我能提出的所有可能的原因以及其他问题提出的所有可能的原因。

  • 我确信我的密钥是正确的,我检查了很多次,我可以使用该密钥从其他机器登录到目标服务器;
  • 我将文件的权限设置为 700

那么,是什么给了ssh -v

OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
debug1: Reading configuration data /root/.ssh/config
debug1: Applying options for fmbnew
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to --myhost-- [--myip--] port 22.
debug1: Connection established.
debug1: permanently_set_uid: 0/0
debug1: identity file "~/.ssh/host-key" type -1
debug1: loaded 1 keys
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.7p1 
Debian-5+deb8u2
debug1: match: OpenSSH_6.7p1 Debian-5+deb8u2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.3
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-sha1 none
debug1: kex: client->server aes128-ctr hmac-sha1 none
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
debug1: Host '--myhost--' is known and matches the RSA host key.
debug1: Found key in /root/.ssh/known_hosts:24
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: "~/.ssh/host-key"
debug1: No more authentication methods to try.
Permission denied (publickey).

这是在auth.log服务器上发现的内容(不多):

Apr  1 12:15:33 host-07 sshd[23955]: Connection closed by --my-client-ip-- [preauth]

我应该说这台客户端机器相当老了,它装有 Centos 5。但在开始深入研究之前,我需要确定一下。

有什么想法可以让我至少弄清楚到底出了什么问题?

编辑:更详细的服务器端日志(DEBUG1):

Apr  1 13:19:11 host-07 sshd[25465]: debug1: Forked child 25512.
Apr  1 13:19:11 host-07 sshd[25512]: Set /proc/self/oom_score_adj to 0
Apr  1 13:19:11 host-07 sshd[25512]: debug1: rexec start in 5 out 5 newsock 5 pipe 7 sock 8
Apr  1 13:19:11 host-07 sshd[25512]: debug1: inetd sockets after dupping: 3, 3
Apr  1 13:19:11 host-07 sshd[25512]: Connection from --- port 55088 on --- port 22
Apr  1 13:19:11 host-07 sshd[25512]: debug1: Client protocol version 2.0; client software version OpenSSH_4.3
Apr  1 13:19:11 host-07 sshd[25512]: debug1: match: OpenSSH_4.3 pat OpenSSH_4* compat 0x00000000
Apr  1 13:19:11 host-07 sshd[25512]: debug1: Enabling compatibility mode for protocol 2.0
Apr  1 13:19:11 host-07 sshd[25512]: debug1: Local version string SSH-2.0-OpenSSH_6.7p1 Debian-5+deb8u2
Apr  1 13:19:11 host-07 sshd[25512]: debug1: permanently_set_uid: 104/65534 [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: list_hostkey_types: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ssh-ed25519 [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: SSH2_MSG_KEXINIT sent [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: SSH2_MSG_KEXINIT received [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: kex: client->server aes128-ctr hmac-sha1 none [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: kex: server->client aes128-ctr hmac-sha1 none [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: expecting SSH2_MSG_KEXDH_INIT [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: SSH2_MSG_NEWKEYS sent [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: expecting SSH2_MSG_NEWKEYS [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: SSH2_MSG_NEWKEYS received [preauth]
Apr  1 13:19:11 host-07 sshd[25512]: debug1: KEX done [preauth]
Apr  1 13:19:12 host-07 sshd[25512]: debug1: userauth-request for user myuser service ssh-connection method none [preauth]
Apr  1 13:19:12 host-07 sshd[25512]: debug1: attempt 0 failures 0 [preauth]
Apr  1 13:19:12 host-07 sshd[25512]: debug1: PAM: initializing for "myuser"
Apr  1 13:19:12 host-07 sshd[25512]: debug1: PAM: setting PAM_RHOST to "--myip--"
Apr  1 13:19:12 host-07 sshd[25512]: debug1: PAM: setting PAM_TTY to "ssh"
Apr  1 13:19:12 host-07 sshd[25512]: Connection closed by --myip-- [preauth]
Apr  1 13:19:12 host-07 sshd[25512]: debug1: do_cleanup [preauth]
Apr  1 13:19:12 host-07 sshd[25512]: debug1: monitor_read_log: child log fd closed
Apr  1 13:19:12 host-07 sshd[25512]: debug1: do_cleanup
Apr  1 13:19:12 host-07 sshd[25512]: debug1: PAM: cleanup
Apr  1 13:19:12 host-07 sshd[25512]: debug1: Killing privsep child 25513

答案1

如果您拥有 root 权限,请在前台和调试模式下运行 sshd sshd -D -d。您需要先停止 sshd 守护进程。服务器会提供有关密钥失败原因的更多具体信息。

您提到文件是 0700。.ssh 是什么?它也必须是 0700。

答案2

万一有帮助,我遇到了类似的问题,我也无法通过 ssh 登录,调试消息看起来很类似

我确实尝试运行pam_rally2 -r --user ${username}重置失败计数,但仍然失败。然后我记得我已经切换到发行版focal并升级等等...

重新安装ssh最终确实解决了问题......

相关内容