我正在编写代理支持HTTPS-HTTPS代理.在我使用Python作为主要编程语言之前,我现在对node.js感兴趣,所以我准备迁移.
我面临的最大问题是我不知道如何在node.js中生成CA和其他服务器证书.在Python中,有一个很棒的pyOpenSSL.到目前为止,我在node.js中找不到类似的东西.
也许我应该使用openssl-fork方法?但是如何在openssl中处理交互操作.
谢谢.
Nic*_*ube 33
使用shell作为证书:
openssl genrsa -out server-key.pem 1024
openssl req -new -key server-key.pem -out server-csr.pem
openssl x509 -req -in server-csr.pem -signkey server-key.pem -out server-cert.pem
Run Code Online (Sandbox Code Playgroud)
然后在node.js中使用它们
var https = require('https');
https.createServer({
key: fs.readFileSync('server-key.pem'),
cert: fs.readFileSync('server-cert.pem')
},
function (req,res) {
...
})
Run Code Online (Sandbox Code Playgroud)
编辑:
您也可以在NPM中尝试这个项目:https: //npmjs.org/package/openssl-wrapper
我发现它正在搜索NPM回购:https://npmjs.org/search?q = openssl
我自己没有尝试或检查过它,但它看起来像是一种使用节点生成证书的方法,这是原始问题.
var openssl = require('openssl-wrapper');
var password = 'github';
return openssl.exec('genrsa', {des3: true, passout: 'pass:' + password, '2048': false}, function(err, buffer) {
console.log(buffer.toString());
});
Run Code Online (Sandbox Code Playgroud)
我会对反馈感兴趣.;)
Eri*_*nti 25
如果有人确实想从node.js以编程方式创建CSR,我创建了一个nodejs模块,它使用openssl创建私钥和CSR.
编辑:改用pem.它更完整,可能更可靠.
Edit2:实际上,pem也只是openssh上的一个简单包装器.对于纯粹的js实现,请查看forge
| 归档时间: |
|
| 查看次数: |
31753 次 |
| 最近记录: |