簡體   English   中英

來自cmd的權限被拒絕,但帶有多個ssh鍵的git bash拒絕

[英]Permissions denied from cmd but not from git bash with multiple ssh keys

我在Windows 7上有兩個供兩個bitbucket用戶使用的ssh密鑰~/.ssh/bit_rsa ~/.ssh/id_rsa~/.ssh/bit_rsa

和配置文件,如教程中所述 我也更新.bashrc來加載ssh-agent。

1)來自git bash的 ssh -v -t git@bitbucket.org

http://pastebin.com/pAk9rkvH

2)來自cmd的 ssh -v -t git@bitbucket.org

http://pastebin.com/vbUcNwcW

另外ssh-add -l cmd :無法打開與身份驗證代理的連接。

git bash :$ ssh-add -l 2048 43:7c:d6:4b:0d:26:5f:1c:d1:d2:61:17:0c:7d:0b:56 /c/Users/username/.ssh / id_rs a(RSA)

什么問題 為什么我不能從cmd登錄ssh?

ssh-agent必須正在運行,並且ssh使用$SSH_AUTH_SOCK env var作為連接ssh-agent所需的連接信息。 ssh-agent啟動和的環境變量設置(NOET:價值是動態的,不是固定的),當你在(git-)的bash你的.bashrc開始的ssh-agent:

/usr/bin/ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
echo succeeded
chmod 600 "${SSH_ENV}"
. "${SSH_ENV}" > /dev/null

您的cmd外殼沒有使用.bashrc這樣ssh-agent沒有運行(除非你正在運行(git-)bash和cmd並行。如果並行或運行它們ssh-agent以其他方式運行,那么$SSH_AUTH_SOCK不在您的cmd shell中設置。

我認為我的問題僅與服務器窗口有關。

我修好了它:

1)刪除c:\\ Program Files(x86)\\ Git中的.ssh文件夾2)通過git bash將您的IP地址添加到known_hosts (例如ssh -t git@bitbucket.org)3)從c:\\ users復制.ssh文件夾\\ username.ssh到c:\\ Program Files(x86)\\ Git,帶有正確的known_hosts文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM