Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firefox和SSL:sec\u错误\u未知\u颁发者_Firefox_Ssl - Fatal编程技术网

Firefox和SSL:sec\u错误\u未知\u颁发者

Firefox和SSL:sec\u错误\u未知\u颁发者,firefox,ssl,Firefox,Ssl,我的客户端在访问Firefox时收到一条sec\u error\u unknown\u issuer错误消息。 我自己无法重现这个错误。我在Vista和XP机器上安装了FF,没有任何问题。Ubuntu上的FF也可以正常工作 有没有人会遇到同样的错误?有没有人能为我提供一些线索,让我告诉我的ISP更改一些设置? 该证书是所谓的通配符SSL证书,适用于所有子域(*.ipmail.nl)。选择最便宜的是我错了吗?您的客户在哪个平台上使用哪个版本的Firefox 这些人的问题与记录的问题相同。我希望你能

我的客户端在访问Firefox时收到一条
sec\u error\u unknown\u issuer
错误消息。 我自己无法重现这个错误。我在Vista和XP机器上安装了FF,没有任何问题。Ubuntu上的FF也可以正常工作

有没有人会遇到同样的错误?有没有人能为我提供一些线索,让我告诉我的ISP更改一些设置?
该证书是所谓的通配符SSL证书,适用于所有子域(*.ipmail.nl)。选择最便宜的是我错了吗?

您的客户在哪个平台上使用哪个版本的Firefox

这些人的问题与记录的问题相同。我希望你能在那里找到解决办法。祝你好运

更新:

让您的客户端检查Firefox中的设置:在“高级”-“加密”上有一个按钮“查看证书”在列表中查找“Comodo CA Limited”。我看到Comodo是该域名/服务器证书的颁发者。在我的两台机器上(Vista和Mac上的FF 3.0.3),条目在列表中(默认情况下/Mozilla)


刚在Comodo通配符SSL证书上遇到了同样的问题。阅读文档后,解决方案是确保您在配置中包含他们发送给您的证书链文件,即

SSLCertificateChainFile /etc/ssl/crt/yourSERVERNAME.ca-bundle

关于

的详细信息我们遇到了这个问题,它非常特定于Firefox——只能在该浏览器中重新编程,Safari、IE8、Chrome等都很好

修复它需要从Comodo获取更新的证书并安装它


不知道他们改变了什么魔力,但肯定是证书中的某些东西让Firefox不喜欢。

我在Firefox和我的服务器上遇到了这个问题。我联系了GoDaddy客户支持,他们让我安装中间服务器证书:

在重新启动万维网发布服务后,一切都很顺利


如果您不能完全访问服务器,您的ISP将不得不为您执行此操作。

Firefox比其他浏览器更严格,需要正确安装中间服务器证书。这可以由购买证书的证书颁发机构提供。中间证书通常安装在与服务器证书相同的位置,并且需要httpd.conf文件中的正确条目


虽然许多人批评Firefox(通常)对此进行了独家“标记”,但实际上它展示了更高级别的安全标准。

正如@user126810所说,这个问题可以通过配置文件中的适当
SSLCertificateChainFile
指令来解决

但是在修复配置并重新启动Web服务器之后,我还必须重新启动Firefox。没有这些,Firefox继续抱怨证书不好(看起来它使用了一个缓存的证书)。

对于nginx,可以这样做 使用生成链接的crt文件

$ cat www.example.com.crt bundle.crt > www.example.com.chained.crt
生成的文件应在ssl_证书指令中使用:

server {
    listen              443 ssl;
    server_name         www.example.com;
    ssl_certificate     www.example.com.chained.crt;
    ssl_certificate_key www.example.com.key;
    ...
}

如果您从Como获得证书,您需要添加吗 这一行,文件位于您收到的zip文件上

SSLCertificateChainFile /path/COMODORSADomainValidationSecureServerCA.crt

我知道这个线程有点旧,但是我们也遇到了这个问题,我们将在这里为其他人归档我们的最终解决方案

我们在使用Comodo通配符“正ssl”证书时遇到了同样的问题。 我们正在使用squid反向SSL代理运行我们的网站,Firefox会像您所说的那样不断抱怨“sec_error_unknown_issuer”,但其他浏览器都可以

我发现这是证书链不完整的问题。Firefox显然没有内置的中间证书,尽管Firefox信任根CA。因此,您必须向Firefox提供整个证书链。科摩多的支持国:

中级证书是 站点(服务器)之间的一个或多个证书 证书和根证书。中级证书,或 证书,完成到受信任的根证书的链 浏览器

使用中间证书意味着您必须完成 安装过程中启用站点的附加步骤 要链接到受信任根的证书,并且在中不显示错误 当有人访问您的网站时,浏览器将关闭

这一点在本帖前面已经提到过,但它并没有解决您是如何做到这一点的

首先,您必须创建一个链接证书捆绑包,您可以使用您最喜欢的文本编辑器,只需按正确(相反)的顺序粘贴它们即可

  • 中间CA证书2-intermediateC2.crt-位于 文件
  • 中级CA证书1-IntermediateCA 1.crt
  • 根CA证书-Root.crt-位于文件末尾
如果名称不明显,您可以从ssl提供商处获得确切的顺序

然后将文件保存为您喜欢的任何名称。例如,yourdomain-chain-bundle.crt

在本例中,我没有包括实际的域证书,只要您的服务器可以配置为使用单独的链接证书捆绑包,这就是您所使用的

更多数据可在此处找到:

如果出于某种原因,您无法将服务器配置为使用单独的链接捆绑包,那么您只需将服务器证书粘贴到捆绑包的开头(顶部),并将生成的文件用作服务器证书。这是在例如Squid的情况下需要做的。有关此主题,请参见以下squid邮件列表

这为我们解决了问题。

2014年6月:

这是我使用的配置,在我的头撞到墙上几天后,它工作得很好。我使用Express 3.4(我认为Express 4.0也是如此)

正如您在检查我的证书后所看到的,我有4[0,1,2,3]:

openssl s|U客户端-connect mydomain.com:443-showcerts | grep“^”

祝你好运!
PD:如果您想要更多答案,请检查:

如果其他人遇到t
var privateKey  = fs.readFileSync('helpers/sslcert/key.pem', 'utf8');
var certificate = fs.readFileSync('helpers/sslcert/csr.pem', 'utf8');

files = ["COMODORSADomainValidationSecureServerCA.crt",
         "COMODORSAAddTrustCA.crt",
         "AddTrustExternalCARoot.crt"
        ];

ca = (function() {
  var _i, _len, _results;

  _results = [];
  for (_i = 0, _len = files.length; _i < _len; _i++) {
    file = files[_i];
    _results.push(fs.readFileSync("helpers/sslcert/" + file));
  }
  return _results;
})();

var credentials = {ca:ca, key: privateKey, cert: certificate};

// process.env.PORT : Heroku Config environment
var port = process.env.PORT || 4000;

var app = express();
var server = http.createServer(app).listen(port, function() {
        console.log('Express HTTP server listening on port ' + server.address().port);
});
https.createServer(credentials, app).listen(3000, function() {
        console.log('Express HTTPS server listening on port ' + server.address().port);
});

// redirect all http requests to https
app.use(function(req, res, next) {
  if(!req.secure) {
    return res.redirect(['https://mydomain.com', req.url].join(''));
  }
  next();
});
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 4000
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 3000
ubuntu@ip-172-31-5-134:~$ openssl s_client -connect mydomain.com:443 -showcerts | grep "^ "
depth=3 C = SE, O = AddTrust AB, OU = AddTrust External TTP Network, CN = AddTrust External CA Root
verify error:num=19:self signed certificate in certificate chain
verify return:0
 0 s:/OU=Domain Control Validated/OU=PositiveSSL/CN=mydomain.com
   i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
 1 s:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
   i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Certification Authority
 2 s:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Certification Authority
   i:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
 3 s:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
   i:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
    Protocol  : TLSv1.1
    Cipher    : AES256-SHA
    Session-ID: 8FDEAEE92ED20742.....3E7D80F93226142DD
    Session-ID-ctx:
    Master-Key: C9E4AB966E41A85EEB7....4D73C67088E1503C52A9353C8584E94
    Key-Arg   : None
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    TLS session ticket lifetime hint: 300 (seconds)
    TLS session ticket:
    0000 - 7c c8 36 80 95 4d 4c 47-d8 e3 ca 2e 70 a5 8f ac   |.6..MLG....p...
    0010 - 90 bd 4a 26 ef f7 d6 bc-4a b3 dd 8f f6 13 53 e9   ..J&..........S.
    0020 - f7 49 c6 48 44 26 8d ab-a8 72 29 c8 15 73 f5 79   .I.HD&.......s.y
    0030 - ca 79 6a ed f6 b1 7f 8a-d2 68 0a 52 03 c5 84 32   .yj........R...2
    0040 - be c5 c8 12 d8 f4 36 fa-28 4f 0e 00 eb d1 04 ce   ........(.......
    0050 - a7 2b d2 73 df a1 8b 83-23 a6 f7 ef 6e 9e c4 4c   .+.s...........L
    0060 - 50 22 60 e8 93 cc d8 ee-42 22 56 a7 10 7b db 1e   P"`.....B.V..{..
    0070 - 0a ad 4a 91 a4 68 7a b0-9e 34 01 ec b8 7b b2 2f   ..J......4...{./
    0080 - e8 33 f5 a9 48 11 36 f8-69 a6 7a a6 22 52 b1 da   .3..H...i....R..
    0090 - 51 18 ed c4 d9 3d c4 cc-5b d7 ff 92 4e 91 02 9e   .....=......N...
    Start Time: 140...549
    Timeout   : 300 (sec)
    Verify return code: 19 (self signed certificate in certificate chain)
SSLCACertificateFile /your/path/to/ssl_ca_certs.pem