2016-01-28 145 views
0

當我嘗試通過SSH從任何語言(通過Golang & Nodejs嘗試)連接到來自Windows的其中一臺服務器時,代理轉發不起作用。 我在說這是因爲像git pull這樣的命令會拋出錯誤(Permission denied(publickey)),而如果我直接使用Putty登錄,則不會出現這種錯誤。 我試圖使用env。變量SSH_AUTH_SOCK但似乎在Windows上沒有這樣的變量集。我期望佩塔特做這項工作。在的NodeJS(simple-ssh LIB)Windows上的SSH代理轉發(pageant)

代碼示例:

this.ssh = new SSH({ 
    // other unimportant variables 
    agent: process.env.SSH_AUTH_SOCK, // which is undefined 
    agentForward: true 
}); 

如何在Windows上工作的呢?

回答

0

對於Windows上的盛會,你應該使用agent而不是特殊'pageant'值:

this.ssh = new SSH({ 
    // other unimportant variables 
    agent: 'pageant', 
    agentForward: true 
}); 
+0

MH ......仍然獲得關鍵的錯誤..你在哪裏找到的? – ianaz

+0

它來自自述文件中的文檔。另外,我剛剛在Windows機器上嘗試過,它工作得很好。你確定你已經加載了選美器,並且你的密鑰添加了嗎? – mscdex