要使用SSL,我使用的Web服务器需要一个.pem文件的位置(-ssl_cert xyz.pem)
我有GoDaddy颁发的证书。 他们给了我这个文件:
banana.crt
上述证书请求是使用我生成的私钥创build的
banana.key
谷歌search似乎表明,创build.pem文件是简单的连接它们。
cat banana.key banana.crt> banana.pem
不幸的是,用banana.pem启动服务器,并用Safari访问它告诉我:
颁发者:去爸爸安全authentication机构
这个证书是由一个未知的权威人士签署的
怎么了? 我或者GoDaddy在创build证书的时候搞了些什么,或者我不知道怎么把这里的东西混合到我的.pem文件中?
我正在访问最新的OS X Leopard + Safari安装。
根据您拥有哪种types的证书,请转到https://certs.godaddy.com/Repository.go并下载相应的中间证书链(最常见的是.crt文件之一 )。 将其粘贴到您的PEM文件中,连同您自己的证书和密钥。
您创build的.pem文件是好的。 如果不是,那么HTTP服务器不太可能启动。
假设您在浏览器的可信证书中拥有GoDaddy根证书,那么他们提供的证书就是所谓的“链接”证书。 这意味着它没有直接由其根签署。 它由一个本身由根签名的中间CA签署。
为了使浏览器信任链接证书,需要知道链中的所有证书。 在Apache中,这是通过SSLCertificateChainFile指令完成的,该指令在SSL握手过程中将链中的其他证书推送给客户端。
你需要在Mongoose中find这个指令的替代品。 手册没有显示如何。 你可能会发现把证书放在PEM的末尾来帮助你。
尝试使用openssl命令生成pem文件。