Tag: ssl certificate

主机名/ IP不匹配证书的名称

我试图创build一个TLS服务器/客户端设置使用Node.js 0.8.8与自签名证书。 基本的服务器代码看起来像 var tlsServer = tls.createServer({ key: fs.readFileSync('server-key.pem'), cert: fs.readFileSync('server-cert.pem') }, function (connection) { // […] }); tlsServer.listen(3000); 现在当我尝试连接到这个服务器时,我使用下面的代码: var connection = tls.connect({ host: '192.168.178.31', port: 3000, rejectUnauthorized: true, ca: [ fs.readFileSync('server-cert.pem') ] }, function () { console.log(connection.authorized); console.log(connection.authorizationError); console.log(connection.getPeerCertificate()); }); 如果我删除线 ca: [ fs.readFileSync('server-cert.pem') ] 从客户端代码中,Node.js抛出一个错误告诉我DEPTH_ZERO_SELF_SIGNED_CERT 。 据我了解,这是因为这是一个自签证书,没有其他人信任这个证书。 如果我删除 rejectUnauthorized: true, 错误消失了 – […]

Node.js / Express.js链证书不起作用

我在Express中有一个SSL服务器,因为有些浏览器需要链式证书(我们有我们自己的中间证书),所以在所有的浏览器上都不行(除非用户手动信任网站)。 我把我们的中间和链式证书放在一个.crt文件中。 链+中级证书位于INT_CERT_FILEvariables中。 这似乎并不奏效。 我正在使用http://www.digicert.com/help ,以及运行openssl s_client -connect tasker.adnxs.net:443 -showcerts | grep "^ " openssl s_client -connect tasker.adnxs.net:443 -showcerts | grep "^ "来检查,但似乎没有返回中间+链证书。 以下是我如何设置它: var fs = require("fs"); var https = require("https"); var express = require("express"); var KEY_FILE = fs.readFileSync("path/to/key/file.key"); var CERT_FILE = fs.readFileSync("path/to/crt/file.crt); var INT_CERT_FILE = fs.readFileSync("path/to/intermediate and chain crt.crt"); var _app_https = express(); […]

是否有可能在NodeJS中dynamic返回SSL证书?

我想在我的NodeJS应用程序中dynamic地返回一个ssl证书信息。 我有两个域名链接到相同的节点应用程序。 我只看到SSL服务器创build时可以指定SSL设置。 是否有可能根据请求的urldynamic返回SSL证书? 否则,如果我必须在另一个端口上创build第二个服务器实例,我是否可以透明地将每个请求传送到原始端口? 我可以让它看起来像不在第二个端口上运行吗? 谢谢,杰夫