https服务器是否有任何示例代码使用SSLCertificateFile
和SSLCertificateKeyFile
使用tls 1.2进行身份验证?
任何指向相关样本的指针都将受到高度赞赏。
ssllabs表示它易受DoS攻击,因为它支持客户端启动的重新协商
我无法让fusker创建一个ssl服务器
var https = require('https');
var fs = require('fs');
var fusker = require('fusker');
//var server = fusker.https.createServer(443);
//var io = fusker.socket.listen(server);
var options = {
key: fs.readFileSync('/etc/ssl/server.key'),
cert: fs.readFileSync('/etc/ssl/mathpdq.crt'),
ciphers: 'RC4-SHA:RC4:ECDHE-RSA-AES256-SHA:AES256-SHA:HIGH:!MD5:!aNULL:!EDH:!AESGCM',
honorCipherOrder: true
};
https.createServer(options, function (req, res) {
res.writeHead(200);
res.end("hello world\n");
}).listen(443);
答案 0 :(得分:6)
创建https监听器很简单,但目前尚不清楚是否存在使用TLS 1.2创建监听器的具体问题。最近的节点针对足够新的OpenSSL版本构建,以获得1.2支持。
然后你需要密码和honorCipherOrder选项,如下所述:http://nodejs.org/api/tls.html
e.g
var https = require('https');
var fs = require('fs');
var options = {
key: fs.readFileSync('my.key'),
cert: fs.readFileSync('my.crt'),
ciphers: 'ECDHE-RSA-AES256-SHA:AES256-SHA:RC4-SHA:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM',
honorCipherOrder: true
};
var server = https.createServer(options, function (req, res) {
...});
server.listen(443);