为 nginx 虚拟主机配置 startssl 免费 https 证书

PHPABC Nginx 1,134 次浏览 , , 没有评论

StartSSL是一个免费颁发SSL证书的机构,被多数有 Linux 背景的软件支持(以Mozilla的Firefox和Thunderbird为首).以前IE是没有StartSSL的根证书的,以至于一段时间IE都会 将使用StartSSL证书的网站列为不受信任的网站.

但是现在情况有所改观了,今年9月份,StartCom公司出现在Windows根 证书认证程序厂商更新当中,因此StartSSL证书在IE平台上已经可以正常使用的.另外Chrome,苹果Safari浏览器都可以正常识别 StartSSL颁发的证书.但是Opera浏览器仍然不能支持.

为 nginx虚拟主机配置startssl证书

前提条件:独立IP.一台Linux机器.Startssl账户申请这里就不说明了.申请很 简单,验证域名所有权也很简单.这里就做证书的配置.

我们先为域名生成证书请求文件和密钥.需要生成2048位加密的证书请求.以 icodex.org为例,执行命令:

openssl req -new -newkey rsa:2048 -nodes -out icodex.csr -keyout icodex.key

执行之后在/etc/nginx/certs目录中就有 icodex.csr. 执行cat icodex.csr查看里面的内容并复制:

然后将复制的粘贴到startssl后 台,这里每一步都进行截图:

第 一步:

第二步:

第三步:

第四步:

第五步:

第六步:

第七步:

第八步:

最后一步注意要先将这段代码保存为icodex.crt 放在与icodex.csr icodex.key同个目录.

然后配置nginx,直接丢配置上来.

server {
listen       443;
listen       80;
server_name  os.icodex.org;
root   /home/icodex/os/public_html;
index index.html index.htm index.php;
access_log  /var/log/nginx/os.icodex.org-access.log  access;

ssl    on;
ssl_certificate    /etc/nginx/certs/icodex.crt;
ssl_certificate_key     /etc/nginx/certs/icodex.key;
ssl_session_timeout 5m;

ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers   on;

location ~* ^.+.(js|css|jpg|jpeg|gif|png|ico|bmp|swf)$ {
expires      7d;
}

# pass the PHP scripts to FastCGI server
#
location ~ .*.php$ {
fastcgi_index  index.php;
fastcgi_pass    127.0.0.1:9000;
include        fastcgi_params;
fastcgi_param   HTTPS on;
}
}

最后重启nginx.完毕…

另外,昨日与Showfom(此君 域名我妒忌)聊天的时候谈到火狐中文版验证ssl时提示ssl不受信任的问题,这应该是根证书的问题,后来测试,果然解决了.我们知道在apache有 SSLCertificateChainFile用来指定CA根证书位置,虽然nginx没有这个字段来指定,但是在nginx和lighttpd中是可 以将CA根证书与我们自己的证书合并使用的(声明来源:Sudone).步骤如下:

我们先到startssl下载 CA根证书,地址:http://cert.startssl.com/certs /,然后进入我们的证书保存位置,注意,操作前记得备份原证书文件.

cd /etc/nginx/certs/
cp icodex.crt icodex.crt.bak
wget http://www.startssl.com/certs/ca.pem
cat ca.pem >> icodex.crt

最 后重启nginx即可.

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Go