ð通過CLI與類似如下的命令成功,我已經成功地ssh
」到谷歌雲計算creds靜靜地失敗:SSH2模塊與CLI
ssh -i ~/.ssh/my-ssh-key [email protected]
但使用ssh2
模塊沒有給予任何輸出,包括錯誤。
var fs = require('fs');
var Client = require('ssh2').Client;
var connSettings = {
host: IP, // 'XXX.XXX.XXX.XX'
port: PORT, // XXXX
username: ME,
privateKey: privateKey, //fs.readFileSync(location, 'utf8')
passphrase: passphrase,
password: password
};
var conn = new Client();
conn.on('ready', function() { //first example in README
console.log('Client :: ready');
conn.exec('uptime', function(err, stream) {
if (err) throw err; //nothing
stream.on('close', function(code, signal) {
console.log('Stream :: close :: code: ' + code + ', signal: ' + signal); //nothing
conn.end();
}).on('data', function(data) {
console.log('STDOUT: ' + data); //nothing
}).stderr.on('data', function(data) {
console.log('STDERR: ' + data); //nothing
});
});
})
.on('error', function(err) {
console.error('err', error); //nothing
})
.connect(connSettings);
我尾礦/var/log/secure
爲我調試的節點劇本,我可以看到日誌條目,當我在ssh
和關閉從CLI會話,但什麼都沒有,當我通過節點ssh2
嘗試。
什麼可能導致此連接默默失敗?
錯誤的端口,它正在等待握手超時?嘗試添加'debug:console.log'到你的連接配置中,看看發生了什麼/沒有發生。 – mscdex
@mscdex我可以看到,當我登錄該對象,他們都是正確的。似乎應該至少有一些錯誤。 – 1252748
你可以在其他地方發佈調試輸出嗎?你使用的是什麼版本的'ssh2'? – mscdex