权限被拒绝(公钥)错误

权限被拒绝(公钥)错误

我正在尝试使用以下命令通过 shh 连接到 github:

ssh -v github.com

但是我遇到了错误 Permission denied (publickey)。我使用 ssh-keygen 命令生成了 rsa 密钥,密钥位于以下路径:

c:\Users\username\.ssh\id_rsa
c:\Users\username\.ssh\id_rsa.pub

我检查了公钥(本地和 github 上的),我确信它们是相同的。以下是调试信息:

OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Reading configuration data /c/Users/username/.ssh/config
debug1: Connecting to github.com [207.97.227.239] port 22.
debug1: Connection established.
debug1: identity file /c/Users/username/.ssh/identity type -1
debug1: identity file /c/Users/username/.ssh/id_rsa type 1
debug1: identity file /c/Users/username/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1p1 Debian-5github2
debug1: match: OpenSSH_5.1p1 Debian-5github2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'github.com' is known and matches the RSA host key.
debug1: Found key in /c/Users/username/.ssh/known_hosts:1
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: /c/Users/username/.ssh/identity
debug1: Offering public key: /c/Users/username/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /c/Users/username/.ssh/id_dsa
debug1: No more authentication methods to try.
Permission denied (publickey).

有人可以给我一些建议如何解决这个问题吗?

提前致谢。

答案1

这是我的错误。我不得不运行以下命令:

ssh -v [email protected]

答案2

SSH将拒绝使用任何非所有者可读的密钥文件。确保私人的民众密钥只有您可读 ( chmod 600 ~/.ssh/id_rsa.*)

相关内容