在Mac OS Pro Majave的Mac Pro中,我使用SSH-KEYGEN为node.js模块SSH2生成了一个新的SSH密钥。但是,我收到错误消息:Cannot parse privateKey: Unsupported key format
我用ssh命令验证了密钥,它工作正常。但不适用于node.js模块SSH2。
在私钥文件中,标题为
-----BEGIN OPENSSH PRIVATE KEY-----
,而结尾为-----END OPENSSH PRIVATE KEY-----
。
我检查了模块ssh2-streams keyParser.js。正则表达式模式RE_HEADER_OPENSSH_PRIV
不包含我的标题。有人可以帮忙吗?
答案 0 :(得分:7)
答案 1 :(得分:0)
将私钥内容放入配置文件时,我遇到了同样的问题:
module.exports = {
sftp: {
privateKey: `MY PRIVATE KEY
CONTENT WAS HERE!!!`
}
}
解决方案:改用fs.readFileSync
:
const fs = require('fs')
module.exports = {
sftp: {
privateKey: fs.readFileSync("Path to my private key"),
}
}