Nginx配置Https证书

公钥和私钥概念:

image-20210223081401410

Nginx+Https内部流程:

客户端浏览器:输入用户名密码,以https提交

image-20210223081449342

a、交互过程:

浏览器使用公钥,把数据加密后,再发送出去

经过公钥加密内容,只有有私钥的人(nginx服务器)才看得懂。

b、nginx配置https的时候,需要两个东西:(此两样需购买)

一个key,私钥。放在nginx服务器里面,仅此一份

一个证书,公钥,供浏览器去下载。

具体操作步骤:

# 1、创建服务器私钥,命令会让你输入一个口令:

openssl genrsa -des3 -out server.key 1024

# 2、创建签名请求的证书(CSR):

openssl req -new -key server.key -out server.csr

# 3、在加载SSL支持的Nginx并使用上述私钥时除去必须的口令:

openssl rsa -in server.key -out server_nopass.key

# 4、最后标记证书使用上述私钥和CSR:

openssl x509 -req -days 365 -in server.csr -signkey server_nopass.key -out server.crt

Conf文件中:

ssl_certificate /etc/nginx/conf.d/server.crt;

ssl_certificate_key /etc/nginx/conf.d/server_nopass.key;

https浏览器上公钥(在证书里),如下图

image-20210223081650912

先查看nginx版本信息,命令:nginx -V

有–with-http_ssl_module,表示安装了https模块。否则需要重新安装。

配置好https方式之后,对http请求重定向

image-20210223081814807