在Stud中,应该在x509 SSL证书pem文件中连接哪个专用RSA密钥以避免“自签名”浏览器警告?

我试图在HAProxy之前实现Stud作为SSL终止点,作为WebSockets路由的概念validation。 我的域名注册商Gandi.net提供免费的1年SSL证书。

通过OpenSSL,我生成了一个CSR,它给了我两个文件:

  1. domain.key
  2. domain.csr

我把domain.csr给了我的信任的权威,他们给了我两个文件:

  1. domain.cert
  2. GandiStandardSSLCA.pem(我认为这被称为中介证书?)

这是我遇到的摩擦的地方:使用OpenSSL的Stud,期望在“pem-file”中有一个“rsa私钥” – 它被描述为“SSL x509 certificate file。REQUIRED”。

如果我将domain.key添加到Stud的Pem-file底部,Stud将开始,但是我收到浏览器警告“证书是自签名的”。 如果我省略了domain.key,Stud不会启动,并抛出一个由OpenSSL函数触发的错误,这个错误是为了确定我的“pem-file”是否包含“RSA私钥”。

在这一点上,我不能确定问题是:

  1. 免费的SSL证书将永远是自签名的,并将永远导致浏览器提出警告
  2. 我只是没有正确使用梭哈
  3. 我使用了错误的“RSA私钥”
  4. CA域证书,中间证书和私钥的顺序是错误的。

SSL X509证书文件是一个文件,其中包含国际电联在其X系列规范中指定格式的证书 – 特别是x.509。 这里没有私钥信息,因为它是一个证书格式,所以名称,公钥,签名,有效date和其他好东西都在那里 – 但不是私钥。

PEM是隐私增强邮件的一组规范 – 它提供了大部分基于PKCS规范的包装标准(PKCS规范是由RSA和RSA实验室自己开发的,供公众使用,以实现各种实现之间的互操作性 – 这是由IETF和其他领域的社区再次完成)。 您可以使用openssl来转换格式 – 请参阅http://www.openssl.org/docs/apps/openssl.html 。 连接不会帮助你。

如果证书是自签名的,那么CA就给你一个奇怪 – 这让我觉得你说的是喂养Gandi CA证书openssl,告诉你证书是自签名的(ergo是一个根或最终实体证书,但肯定不是一个中间链证书)。

要解决您的一些观点:1自签名证书将始终在良好的客户端中产生警告,因为在用户决定他们是可信赖的之前他们缺乏信任(或者对于大多数用户来说,直到Microsoft,Mozilla基金会,Google或Opera)才决定用户应该相信CA)。 如果您的客户(浏览器或其他)将CA存储并标记为可信,则不会popup此警告。 2可能3看起来像你使用正确的密钥和企业社会责任与Gandi 4看起来像你需要加载域密钥和证书,可能CA到OpenSSL通过操作系统级信任configuration或通过螺柱configuration。