SSL证书介绍
数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。
SSL协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。
SSL认证原理
1.握手协议
MAC算法以及保密密钥,用来保护在SSL记录中发送的数据。握手协议是在应用程序的数据传输之前使用的。
2.记录协议
SSL连接提供两个服务:
(1)保密性:使用握手协议定义的秘密密钥实现
(2)完整性:握手协议定义了MAC,用于保证消息完整性
3.警报协议
SSL连接,双方还会先删除相关的会话号,秘密和密钥。每个警报消息共2个字节,第1个字节表示错误类型,如果是警报,则值为1,如果是致命错误,则值为2;第2个字节制定实际错误类型。
SSL证书部署准备工作
1.下载证书
证书下载后解压缩会看见后缀 .key 和 .pem 的文件,把这两个文件上传到nginx服务器上,然后在conf文件下面创建cert文件夹,把证书拷贝到这个文件下面。
2.部署证书
./nginx -t 查看nginx安装路径,找到nginx.conf配置文件编辑
在server下面添加
server_name 你的域名地址;
listen 443 ssl;
ssl_certificate conf/cert/.pem;
ssl_certificate_key conf/cert/.key;
3.配置http自动跳转https
新增一个server新增以下配置
listen 80;
server_name 你的域名;
rewrite ^(.*)$ https://$host$1;
4.加载nginx配置
./nginx -s reload
最后打开网页验证