纪念网站升级免费的阿里云https证书

来源:V型知识库 2018年08月27日 11:49 浏览:2929

昨天闲来无事,浏览了自己的网站,网站也是用来记录自己技术成长的一部分,权当笔记了,可是发现,打开chrome浏览器,地址栏显示安全,感觉体验非常不好,所以就有了升级https的念头,然后上网查了下,阿里云居然有免费的https,具体申请步骤如下:

  1. 登录阿里云-->安全(云盾)-->SSL 证书,点击购买按钮

2.选择Symantec,然后点击证书类型, 证书类型都要点击一遍,直到免费型DV SSL 出现,然后选择它即可


4.支付 (0元) 

5.支付后会看到一条状态为“待完成”的记录,此时千万别以为就可以等待阿里云审核了,其实后面还是有资料要填写的。

6.选择 补全,并填写相应信息。真实填写就可以了。包括:域名、姓名、邮箱等等。因为我的域名是托管到阿里云解析服务的,我的认证方式DNS解析认证

此时有两个情况,第一种 勾选 证书绑定的域名在[阿里云的云解析]产品中,授权系统自动添加一条记录以完成域名授权验证,由于本人的域名是在阿里云购买的,所以直接勾选,就不用管了,等待审核成功。


7,大概10几分钟就审核成功了,审核成功后,回到阿里云控制台-左侧菜单产品与服务-SSL 证书,然后我们会看到一条记录

点击 下载,然后回看到

各种应用服务器的配置方法,由于本人网站前置应用代理服务器为nginx,所以在这里晒下nginx如何配置。

1,下载证书,

文件说明:

1. 证书文件214946321510834.pem,包含两段内容,请不要删除任何一段内容。

2. 如果是证书系统创建的CSR,还包含:证书私钥文件214946321510834.key。

( 1 ) 在Nginx的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为214946321510834.key;

如果忘记了nginx的安装目录,执行命令 ps -ax|grep nginx 即可看到

( 2 ) 打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件,找到:

# HTTPS server
# #server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.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 / {
#
#
#}
#}

( 3 ) 将其修改为 (以下属性中ssl开头的属性与证书配置有直接关系,其它属性请结合自己的实际情况复制或调整) :以www.vxzsk.com为例

server {
    listen       443 ssl;
    server_name  www.vxzsk.com vxzsk.com;


    ssl_certificate   cert/214946321510834.pem;
    ssl_certificate_key  cert/214946321510834.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;

    location / {
        #root   /usr/share/nginx/html;
        root   /usr/local/tomcat/webapps/ROOT/;
        proxy_pass  http://101.280.108.78:9999;
        proxy_redirect off;

        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host:$server_port;

        index  index.html index.htm;
    }
}

第6、7行是我们在第一步上传的证书位置

上述证书的server配置好之后,还有个80端口的server

server {
    listen       80 default_server;
    server_name  www.vxzsk.com vxzsk.com;
  
#301 跳转
  if ($host != 'https://www.vxzsk.com' ) {
     rewrite ^/(.*)$ https://www.vxzsk.com/$1 permanent;

   }

如上述代码,80端口同时做了301跳转,再次提醒,我这里配置了两个server,一个是80端口的,一个是443证书端口。

保存退出。

( 4 )重启 Nginx。

/etc/init.d/nginx restart

或者

service nginx restart

生效如下: