作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在 Ubuntu 中使用 nodejs。我想同时禁用 SSL 3.0 和 TLS v1.0。
这是我的代码
var constants = require('constants')
, https = require('https')
, path = require('path')
, tls = require('tls')
, fs = require('fs');
var sslOptions = {
key: fs.readFileSync('/etc/ssl/private/private.key'),
secureProtocol: 'SSLv23_server_method',
secureOptions: constants.SSL_OP_NO_SSLv3,
secureOptions: constants.SSL_OP_NO_TLSv1,
cert: fs.readFileSync('/etc/ssl/certs/STAR_mycert.crt'),
ca: [
fs.readFileSync('/etc/ssl/certs/AddTrustExternalCARoot_1.crt'),
fs.readFileSync('/etc/ssl/certs/AddTrustExternalCARoot_2.crt'),
fs.readFileSync('/etc/ssl/certs/AddTrustExternalCARoot_3.crt')
],
//ca: fs.readFileSync('/etc/ssl/certs/AddTrustExternalCARoot.crt'),
requestCert: false,
rejectUnauthorized: false
};
现在,当我在 digicert 上测试我的网站时,我遇到了以下问题
知道怎么做吗?
最佳答案
我对 node.js 了解不多,但我认为你最后一个 secureOptions
只是覆盖了第一个,因为你不能在字典中多次使用相同的 key 。由于底层 TLS 堆栈 (OpenSSL) 要求选项按位组合或尝试以下操作:
secureOptions: constants.SSL_OP_NO_SSLv3 | constants.SSL_OP_NO_TLSv1,
关于node.js - 如何在 nodejs 中禁用 SSL 3.0 和 TLS 1.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40434934/
我是一名优秀的程序员,十分优秀!