一台服务器上具有两个域的RedBird.js和Node.js的ZeroSSL证书
坏消息“免费SSL正在加入ZeroSSL”。由于他们的消息,我更新了证书,TLS停止工作。过去工作得很好 对于新证书,我从收到错误“您可能需要安装中间/链证书以将其链接到受信任的根证书”,并且从收到错误“TLS证书不受信任” 浏览器足够聪明,可以掩盖这个问题,但我的Android应用程序使用了API,它停止了工作 自ZeroSSL介入以来,还有谁遇到TLS问题 我在nodejs上使用redbirdjs,这非常棒,因为它非常简单(两个域,同一个服务器),但是Zero没有为我的安装提供任何安装说明。(我的域名流量很小,所以使用最快的Web服务器等不是问题) Zero在一个证书选项中删除了2个域(谢谢),因此我的更新脚本如下所示:一台服务器上具有两个域的RedBird.js和Node.js的ZeroSSL证书,node.js,ssl-certificate,redbird,Node.js,Ssl Certificate,Redbird,坏消息“免费SSL正在加入ZeroSSL”。由于他们的消息,我更新了证书,TLS停止工作。过去工作得很好 对于新证书,我从收到错误“您可能需要安装中间/链证书以将其链接到受信任的根证书”,并且从收到错误“TLS证书不受信任” 浏览器足够聪明,可以掩盖这个问题,但我的Android应用程序使用了API,它停止了工作 自ZeroSSL介入以来,还有谁遇到TLS问题 我在nodejs上使用redbirdjs,这非常棒,因为它非常简单(两个域,同一个服务器),但是Zero没有为我的安装提供任何安装说明。
const { constants } = require('crypto');
var redbird = new require('redbird')({ port: 8080, ssl: { port: 443 }});
redbird.register('domain1.com', 'http://127.0.0.1:9443', {
ssl: {
key: 'ssl/domain1/private.key',
cert: 'ssl/domain1/certificate.crt',
ca: 'ssl/domain1/ca_bundle.crt',
secureOptions: constants.SSL_OP_NO_TLSv1 | constants.SSL_OP_NO_TLSv1_1,
}
});
redbird.register('domain2.com', 'http://127.0.0.1:3003', {
ssl: {
key: 'ssl/domain2/private.key',
cert: 'ssl/domain2/certificate.crt',
ca: 'ssl/domain2/ca_bundle.crt',
secureOptions: constants.SSL_OP_NO_TLSv1 | constants.SSL_OP_NO_TLSv1_1,
}
});
除了分离域ssl配置之外,它与使用SSLForFree时使用的配置相同
我在某个地方读到,“免费”SSL CA不一定提供“完整链”
有人知道如何让TLS在RedbirdJ和NodeJ上使用ZeroSSL重新工作吗?好吧,我让它工作了。我使用了,我想它只是将几个文件连接在一起。无论是哪种方式,对于红鸟迷(像我一样),这里都是同一服务器上多个域的脚本
// https://github.com/OptimalBits/redbird
// https://whatsmychaincert.com/
// 9443 is where domain1 server runs locally
// 3003 is where domain2 server runs locally
const { constants } = require('crypto');
var redbird = new require('redbird')({ port: 8080, ssl: { port: 443 }});
redbird.register('domain1.com', 'http://127.0.0.1:9443', {
ssl: {
port: 9443,
key: 'ssl/domain1/private.key',
cert: 'ssl/domain1/domain1.chained.crt', // used whatsmychaincert.com to generate ('enter hostname', no need to include root)
secureOptions: constants.SSL_OP_NO_TLSv1 | constants.SSL_OP_NO_TLSv1_1,
}
});
redbird.register('domain2.net', 'http://127.0.0.1:3003', {
ssl: {
port: 3003,
key: 'ssl/domain2/private.key',
cert: 'ssl/domain2/domain2.chained.crt',
secureOptions: constants.SSL_OP_NO_TLSv1 | constants.SSL_OP_NO_TLSv1_1,
}
});
在从ZeroSSL下载的3个文件中,whatsmychaincert.com将certificate.crt和ca_bundle.crt(按顺序)放在一个名为domain.chained.crt的文件中(如上面的脚本所示)。好吧,我让它工作了。我使用了,我想它只是将几个文件连接在一起。无论是哪种方式,对于红鸟迷(像我一样),这里都是同一服务器上多个域的脚本
// https://github.com/OptimalBits/redbird
// https://whatsmychaincert.com/
// 9443 is where domain1 server runs locally
// 3003 is where domain2 server runs locally
const { constants } = require('crypto');
var redbird = new require('redbird')({ port: 8080, ssl: { port: 443 }});
redbird.register('domain1.com', 'http://127.0.0.1:9443', {
ssl: {
port: 9443,
key: 'ssl/domain1/private.key',
cert: 'ssl/domain1/domain1.chained.crt', // used whatsmychaincert.com to generate ('enter hostname', no need to include root)
secureOptions: constants.SSL_OP_NO_TLSv1 | constants.SSL_OP_NO_TLSv1_1,
}
});
redbird.register('domain2.net', 'http://127.0.0.1:3003', {
ssl: {
port: 3003,
key: 'ssl/domain2/private.key',
cert: 'ssl/domain2/domain2.chained.crt',
secureOptions: constants.SSL_OP_NO_TLSv1 | constants.SSL_OP_NO_TLSv1_1,
}
});
在从ZeroSSL下载的3个文件中,whatsmychaincert.com将certificate.crt和ca_bundle.crt(按顺序)放在一个名为domain.chained.crt的文件中(如上面的脚本所示)。我的网站gpsowl.com(正在开发中)和orangesoftware.net(旧共享软件)都是绿色的,现在我的网站gpsowl.com(正在开发中)和orangesoftware.net(旧共享软件)现在都是绿色的