Tho*_*sen 2 ssl ssl-certificate node.js
我正在玩一群相互连接的“节点”,我真正关心的是它们彼此安全连接并且都经过身份验证。
为此,我认为 TLS 模块非常适合。我创建了一个 CA 并签署了一堆证书,每个节点一个。然后我遇到了一个问题,即现在针对节点连接的主机验证证书。
是否可以以某种方式禁用或解决通用名称验证?
这个设置有什么根本性的缺陷吗?
我是否正确,只要这些证书由我的 CA 签名,连接就应该是安全的,并且我确定只有我的节点可以连接?
必须签署锁定到主机名或 IP(或多个接口的情况下的多个)的证书似乎只是一种烦恼。我了解到验证主机的要求实际上不是 TLS 的一部分,而是 HTTPS - 从这个角度来看,默认情况下这样做可能是 Node.js 的错误?
是否可以以某种方式禁用或解决通用名称验证?
这可以通过将 的checkServerIdentity选项设置tls.connect为无操作函数来实现:
const tls = require('tls')
tls.connect({
checkServerIdentity: () => undefined,
...
})
Run Code Online (Sandbox Code Playgroud)
资料来源:
| 归档时间: |
|
| 查看次数: |
4616 次 |
| 最近记录: |