UNIX Publication

StartSSL免费证书与Nginx配置

注册StartSSL

打开https://www.startssl.com/,点击Sign-up开始注册

参考上图填写注册信息,然后Continue,会有如下提示,系统会发送验证码到你的注册邮箱

检查注册邮箱,将收到的验证码填写提交,然后会出现如下提示,等待审核。

审核通过后,会收到如下提示邮件,点击其中连接,然后输入邮箱中的验证码完成注册

安装证书

接下来创建私匙

安装证书

安装成功后会有如下提示

验证域名

接下来验证域名,点击Validations Wizard

填写域名

选择验证邮件地址

按照提示输入邮箱接收到的验证码完成验证。

创建证书

选择Certificates Wizard,证书目标选择Web Server SSL/TLS Certificate

接下来新建私匙

点击Skip跳过系统建立步骤,我们自己在VPS上建立CSR文件,参考下图通过openssl命令建立CSR文件

注意,为了便于后期安装配置方便,建议密码置空

完成后,cat出建立好的ciuxsss.csr内容,粘贴提交

接下来添加域名

接下来将文本框中的内容保存为一个**.crt**文件

配置Nginx

贴出我的配置文件,大家参考一下

server {
	listen 80;
	location /{
	return 301 https://$host$request_uri;
	}
}

server
	{
		listen 443;
		#listen 80;
		#listen [::]:80;
		server_name ciux.org;
		index index.html index.htm index.php default.html default.htm default.php;
		root  /home/ciux/compiled;

ssl    on;
ssl_certificate    /home/bk/ssl/ciuxsss.crt;
ssl_certificate_key     /home/bk/ssl/ciuxsss.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;

……

其中第一个Server是将所有80端口的http访问301重定向到443端口的https访问。

如果发现浏览器提示证书不被信任,那就需要合并Startssl的根证书

wget http://cert.startssl.com/certs/sub.class1.server.ca.pem  
cat sub.class1.server.ca.pem >> ciuxsss.crt