错误:生成公钥(预期序列)时无法解析私钥,节点+ Bash +远程
伙计们!当我尝试使用remote-exec https://www.npmjs.com/package/remote-exec运行我的cmds时,出现以下错误。错误:生成公钥(预期序列)时无法解析私钥,节点+ Bash +远程
Error: Unable to parse private key while generating public key (expected sequence)
任何人都知道为什么? 谢谢!
我的代码:
controller.mySync = function(req, res) {
// remote-exec
var connection_options = {
port: 22,
username: 'user',
privateKey: require('fs').readFileSync('/home/host/.ssh/id_rsa'),
passphrase: 'mypws'
}
var hosts = [
'192.168.1.1'
];
var cmds = [
'ls -l',
'cat /etc/hosts'
];
rexec(hosts, cmds, connection_options, function(err, stdout, stderr){
if (err) {
console.log(err);
res.status(500).json(err);
} else {
console.log('Great Success!!');
res.status(200).json(stdout);
}
});
};
(发布代表OP的解决方案)。
我解决了我的问题。我做了什么?
最初有必要输入'密码短语',它是空的,并且会产生错误。但是,即使告知了密码,它会产生一个新的错误:
[Error: Authentication failure. Available authentication methods: publickey,password] level: 'authentication', partial: false }
在这种情况下,我再次以人为公共/私有密钥对我的主机的用户:
$ ssh-keygen -t rsa -b 4096 -C "myuser"
生成密钥对后,错过了最后的驱动器,它安装在主机上的公共密钥,允许它被用于验证:
$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
@RobsonFagundes:第一句的目的是表明我不是这个材料的作者。它是作为问题的附录添加的,它应该是一个答案 - 我将它发布给OP。 – halfer
请从标题中删除'Solved'并发布您的解决方案作为一个合适的回答。 – usr2564301