2013-01-31 98 views
1

我一直在git中收到這個錯誤。我已經閱讀並嘗試了很多東西,但似乎沒有任何工作(更改了700或600個權限,我只用-i選項選擇了rsa鍵,我做了ssh-add〜/ .ssh/id_rsa,...)權限被拒絕(publickey)我仍然收到錯誤

任何人都可以幫忙嗎?

感謝

ssh -vT [email protected] 
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 

# 
+0

personal.repositoryhosting.com與github無關。當您執行'ssh -vT git @ github.com'時,您只需檢查是否已將您的公鑰添加到您的GitHub配置文件中。 (HTTPS://help.github。com/articles/generate-ssh-keys) – VonC

+0

我遇到同樣的問題。刪除了我的.ssh文件和重新生成的密鑰。仍然有問題。我使用gitlab並嘗試了很多事情。目前還沒有工作。 – Craicerjack

回答

2

通常id_dsa的(或id_rsa)是你的私有密鑰,並用「的.pub」就結束相應的文件是你的公鑰。

你的〜/ .ssh/personal_key是什麼?它與你的公鑰/私鑰有什麼關係? - 你的ssh代理知道嗎?

+0

確實。我認爲'personal_key'是OPs部分的錯誤。 – eis

+0

嗨,謝謝。你的意思是應該有IdentityFile〜/ .ssh/id_rsa?它仍然不適用於此。 – user2028903

+0

這是一個答案或評論?如果它的答案是如何解決上述問題? – Craicerjack

0

刪除了舊的.ssh文件夾 - 備份它。可能並不理想,具體取決於您擁有的ssh密鑰的數量以及它們的用途。

[email protected]:~$ sudo rm -rf .ssh 

CD回到你的項目目錄

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目錄。
cd到的.ssh

[email protected]:~$ cd ~/.ssh 

下一頁通過https://gitlab.deri.ie/help/ssh上gitlab
https://help.github.com/articles/generating-ssh-keys在github上創建一個新的關鍵

ssh-keygen -t rsa -C "[email protected]" 

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密鑰

粘貼新的密鑰中,你應該是好去。無論如何,這對我有效。

相關問題