Nginx部署SSL证书

时间:2022-10-29 12:09:08
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文件夹,把证书拷贝到这个文件下面。
Nginx部署SSL证书

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

最后打开网页验证