在node.js上强制TLS 1.1或更高版本

时间:2014-04-02 08:33:04

标签: node.js ssl

我正在尝试创建一个使用TLS 1.1或更高版本的服务器。

这是我目前的TLS配置:

var options = {};
options.key  = fs.readFileSync('privatekey.pem');
options.cert = fs.readFileSync('certificate.pem');
options.secureProtocol = 'TLSv1_server_method';
options.ciphers = "AES128-GCM-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH";
options.honorCipherOrder = true;
httpServer = https.createServer(options, app);

正如建议的那样here

通过阅读Openssl的指南here,我没有找到任何关于TLS 1.1的信息

有什么建议吗?

2 个答案:

答案 0 :(得分:3)

不应再使用TLS 1.0。 这可以在node.js中禁用TLS 1.0:

https.createServer({
        secureOptions: require('constants').SSL_OP_NO_TLSv1,
        pfx: fs.readFileSync(path.resolve(pathToCert))
    }, app).listen(443);

您可以使用此工具验证这一点: ssllabs

答案 1 :(得分:1)

这就是诀窍:

options.secureProtocol = 'SSLv23_server_method';
options.ciphers = "AES128-GCM-SHA256:HIGH:!MD5:!aNULL:!EDH";

寻找它的正确位置是here