▪ 获取 SSL 证书
1. 阿里云提供了免费 SSL 证书:https://common-buy.aliyun.com/?spm=5176.2020520163.c1583915649459.d1583915649459.7bc056a7fdPIsl.7bc056a7fdPIsl&commodityCode=cas#/buy
2. 编辑申请到 SSL 证书,将域名和证书绑定:
3. 阿里云后台 SSL 证书审核通过,就可以直接下载证书(根据实际情况下载对应环境的证书)
▪ 部署 SSL 证书
由于我们使用的是 nginx 服务,所以再阿里云下载对应的 nginx 证书压缩包,解压以后得到 ***.key 和 ***.pem 两个文件。
.key:证书的密钥文件。申请证书时如果未选择自动创建CRS,则下载的证书文件压缩包中不会包含.key文件,需要您将自己手动创建的密钥文件拷贝到cert目录下
.pem:证书文件。PEM文件的扩展名为CRT格式
将这两个文件上传到服务器上,同时设置 nginx 虚拟主机的配置,配置如下:
server {
listen 80;
server_name gxmsmokealarm.xxxxx.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name gxmsmokealarm.xxxxx.com;
ssl on;
ssl_certificate /usr/local/nginx/cert/gxmsmokealarm.xxxxx.com.pem;
ssl_certificate_key /usr/local/nginx/cert/gxmsmokealarm.xxxxx.com.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;
root /data/httpd/htdocs/GxmSmokeAlarm/frontend/web;
access_log /var/log/nginx/access.GxmSmokeAlarm.log;
location / {
index index.html index.htm index.php;
include /data/httpd/htdocs/GxmSmokeAlarm/frontend/web/.nginx;
}
# Deny Hidden File
# Like:.nginx .htaccess .svn
location ~ /\. {
deny all;
}
# PHP Script
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
▪ 提取网站证书全代码
1. 用 IE 浏览器打开需要提取证书的网站,并查看证书
2. 在证书路径下可以看到有3级证书
3. 导出第三级证书
4. 导出第二级证书
5. 导出第一级证书
6. 合并全部证书
用记事本打开上面第3、4、5 步骤中导出的 "第三级证书","第二级证书" 和 "第一级证书",然后新建一个扩展名为 pem 文件,将 "三级证书","二级证书" 和 "一级证书" 的内容全部放置到新的 pem 文件中。
▪ 上传证书
在物联网后台按照其说明上传 pem 证书文件即可。