发新话题
打印

申请和使用StartSSL免费https证书要点和nginx配置

申请和使用StartSSL免费https证书要点和nginx配置

申请和使用StartSSL免费https证书要点和nginx配置



       



       


       

在严厉的“监管”下,https的重要性我就不说了。


StartSSL是免费https证书的提供商(其实收费的也不贵 namecheap也就10USD一年,有钱人可以忽略下文),但是申请和使用比较特别。


× 首先是注册与众不同,StartSSL不是通过用户名、密码注册,而是会确认Email后会提示向你的浏览器安装一个密钥,这个密钥是你的身份证明,没有这个密钥就不能登陆StartSSL的系统。


× 认证域名认证Email的过程很简单,我就不废话了


× 申请StartSSL域名https证书建议尽量自己生成CSR来请求证书(生成CSR的方法很多地方都有),否则拿到的证书没有Owner的详细信息,后面会觉得比较不爽。例如


openssl genrsa -des3 -out private.in.key 2048

openssl req -new -key theos.in.key -out csr.for.your.domain


× 收到Email提示申请通过后进入TooBox - “Retrieve Certification”即可


× 配置nginx是有点特别的(配置Apache的话StartSSL官方就有说明)。


要下载
http://www.startssl.com/certs/sub.class1.server.ca.pem 和
http://www.startssl.com/certs/ca.pem (不进行这里说的处理,虽然IE可用,但是FireFox会报错)

sub.class1.server.ca.pem 文件中的内容和你域名的证书(Cert)合并为一个文件(这点很有意思,nginx原来是这样支持ChainCert的)。


ssl_certificate    合并后的域名证书;

ssl_certificate_key  申请域名证书时建立的私钥;

ssl_client_certificate  上面下载的ca.pem;


然后你就有一个各大浏览器都不会报警的https web服务了


× 最后就是一些和其他SSL证书一样的问题,比如移除密钥的密码,免得每次启动服务器都提示输入密码。


openssl rsa -in the.key.that.has.passphase -out no.pwd.key


补充:关于StartSSL的兼容性,目前测试下来只有IE6-不能直接接受站点证书。其他浏览器包括IE7则均可接受StartSSL办法的https证书。



       

TOP

谢谢分享

TOP

发新话题
最近访问的版块