将ssh服务器与节点js中的标识文件连接时,我遇到了以下错误
错误:无法读取私钥文件
my code:
driver = require('node-ssh');
ssh = new driver({
host: '192.168.*.*',
username: 'user',
password: 'password',
privateKey : require('fs').readFileSync('/tmp/my_key')
});
ssh.connect().then(function() {
/*
some code
*/
},function(error) {
console.log(error);
});
But if i connect from my linux machine, it is connected.
ssh -i /tmp/my_key user@192.168.*.*
Please give any solution for this.
答案 0 :(得分:3)
node-ssh需要私钥文件的名称,而不是内容(来自the node-ssh npm page的示例):
ssh = new node_ssh({
host: 'localhost',
username: 'steel',
privateKey: '/home/steel/.ssh/id_rsa'
});