权限被拒绝(publickey)我仍然收到错误

时间:2013-01-31 12:22:03

标签: git github ssh

我一直在git中收到此错误。我已经阅读并尝试了很多东西,但似乎没有任何工作(更改了700或600权限,我只选择带-i选项的rsa键,我做了ssh-add~ / .ssh / id_rsa,...)

有人可以帮忙吗?

感谢

ssh -vT git@github.com
OpenSSH_5.1p1, OpenSSL 0.9.8h 28 May 2008
debug1: Reading configuration data /home/myusername/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to github.com [207.97.227.239] port 22.
debug1: Connection established.
debug1: identity file /home/myusername/.ssh/identity type -1
debug1: identity file /home/myusername/.ssh/id_rsa type 1
debug1: identity file /home/myusername/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.5p1 Debian-    6+squeeze1+github8
debug1: match: OpenSSH_5.5p1 Debian-6+squeeze1+github8 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.1
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 /home/myusername/.ssh/known_hosts:8
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: Offering public key: /home/myusername/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /home/myusername/.ssh/identity
debug1: Trying private key: /home/myusername/.ssh/id_dsa
debug1: No more authentication methods to try.

如果我这样做:

ssh-add -l

我得到了

2048 60:2f:84:01:91:db:f7:83:fa:e0:a2:9a:55:49:85:ad /home/myusername/.ssh/id_rsa (RSA)

我添加了.bashrc

!/bin/bash
eval `ssh-agent -s`
ssh-add

现在我有一个像这样的.ssh / config文件:

#  personal account
#
Host personal.repositoryhosting.com
Hostname personal.repositoryhosting.com
IdentitiesOnly yes
IdentityFile ~/.ssh/id_rsa

#

2 个答案:

答案 0 :(得分:2)

通常id_dsa(或id_rsa)是您的私钥,末尾带有'.pub'的相应文件是您的公钥。

你的〜/ .ssh / personal_key是什么?它与你的公钥/私钥有什么关系?   - 你的ssh代理商知道吗?

答案 1 :(得分:0)

删除了我的旧.ssh文件夹 - 备份它。可能不太理想,具体取决于您拥有的ssh密钥的数量以及它们的用途。

craicerjack@ubuntu:~$ sudo rm -rf .ssh

回到你的项目目录

git init

touch README

git push -u origin master

The authenticity of host 'your_host' can't be established.
ECDSA key fingerprint is b2:9f:1a:8c:13:9b:1f:a2:64:a9:5c:db:61:a5:04:bb.
Are you sure you want to continue connecting (yes/no)? 
Warning: Permanently added 'your_host' (ECDSA) to the list of known hosts.
Branch master set up to track remote branch master from origin.
Everything up-to-date

这将使用known_hosts文件创建一个新的.ssh目录 进入.ssh

craicerjack@ubuntu:~$ cd ~/.ssh

接下来创建一个新密钥

ssh-keygen -t rsa -C "your_email@example.com"

通过gitlab上的https://gitlab.deri.ie/help/ssh发送 或者https://help.github.com/articles/generating-ssh-keys在github上。

Generating public/private rsa key pair.
Enter file in which to save the key (/home/carlos/.ssh/id_rsa): (you can leave this blank if you are in your .ssh dir, otherwise choose where to save the key)
Enter passphrase (empty for no passphrase): (leave this blank if you wish)
Enter same passphrase again: (leave this blankif you wish)
Your identification has been saved in /home/carlos/.ssh/id_rsa.
Your public key has been saved in /home/carlos/.ssh/id_rsa.pub.

使用它将密钥转储到您的控制台,然后复制它:

cat ~/.ssh/id_rsa.pub

在gitlab或github中转到您的帐户。
gitlab - https://gitlab.deri.ie/profile/keys
github - https://github.com/settings/ssh

并点击添加ssh密钥

粘贴新密钥,你应该好好去。无论如何,这对我有用。