Tag: 自签名的

为什么requestjs拒绝与Firefox一起使用的自签名SSL证书?

这是情况。 我创build了一个自签名CA证书,并用它来签署第二个证书,以便与https一起使用。 Web服务器是nginx做SSL终止和反向代理expressjs应用程序。 为了validation信任链是否正确,我在Firefox中安装了CA,并能够按预期方式通过https访问网站,而不会出现警告。 此外,我可以使用openssl x509 -in server.crt -text -noout来检查服务器的证书,我可以看到预期的发行者,特别是该主题的预期通用名称。 (注意:这里使用的通用名称是IP地址,以防可能造成麻烦。) 但是,当我尝试使用requestjs通过nodejs脚本访问服务器时,事情并不顺利。 在脚本中,使用如下代码加载CA证书: request.get({url: theUrl, ca: fs.readFileSync("./ca.crt")}, … 但是我得到这个错误(为了可读性破坏了行,原来是一行): Contacting doorman failed: Error: Hostname/IP doesn't match certificate's altnames: "IP: <redacted> is not in the cert's list: " 特别可疑的是,这似乎是说“证书清单”是空的。 在其他答案中,在选项中使用rejectUnauthorized: false已经被提出,但对于这个应用程序来说这不是一个好的select,因为我想要进行身份validation。 我怎样才能让requestjs / nodejs信任这个证书? 服务器证书的内容,由openssl x509 -text报告 Certificate: Data: Version: 1 (0x0) Serial Number: 3 (0x3) […]