nodejs version:0.8.6
我使用openssl使用以下命令创建了一个ssl csr文件:openssl req -nodes -newkey rsa:2048 -keyout myserver.key -out myserver.csr
现在我想创建一个SSL安全服务器:
var fs = require("fs");
var https = require('https');
var credentials = {
key: fs.readFileSync(options.base_project_folder + 'privatekey.pem'),
cert: fs.readFileSync(options.base_project_folder + 'certificate.pem')
};
var server = https.createServer(credentials, app);
server.listen(port, address, function() {
var addr = this.address();
console.log('listening on %s:%d', addr.address, addr.port);
});
Run Code Online (Sandbox Code Playgroud)
服务器正在运行,但我得到:"SSL连接错误"
试图检查我做的问题:openssl s_client -connect my_dns:443 // my_dns指向我的nodejs服务器的课程
结果:已连接(00000003)139813382997664:错误:140790E5:SSL例程:SSL23_WRITE:ssl握手失败:s23_lib.c:177:
没有可用的对等证书
没有客户端证书发送的CA名称
SSL握手已读取0个字节并写入226个字节
新的,(无),密码是(无)
安全重新协商不支持
压缩:无
扩展:无
谁能帮我 ?我在SSL黑暗中迷失了方向:(
尝试添加CA,如下所示:
var credentials = {
key: fs.readFileSync(options.base_project_folder + 'privatekey.pem'),
cert: fs.readFileSync(options.base_project_folder + 'certificate.pem'),
ca: fs.readFileSync(/path/to/CA/cert)
};
Run Code Online (Sandbox Code Playgroud)
文档说 options参数类似于tls.createServer
| 归档时间: |
|
| 查看次数: |
6810 次 |
| 最近记录: |