ð通过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