Nginx SSL配置
一、SSL 原理 ① 客户端( 浏览器 )发送一个 https 请求给服务器 ② 服务器要有一套证书,其实就是公钥和私钥,这套证书可以自己生成,也可以向组织申请,服务器会把公钥传输给客户端 ③ 客户端收到公钥后,会验证其是否合法有效,无效会有警告提醒,有效则会生成一串随机数,并用收到的公钥加密,然后把加密后的随机字符串传输给服务器 ④ 服务器收到加密随机字符串后,先用私钥解密来获取到这一串随机字符串,再用这串随机字符串加密要传输的数据,然后把加密后的数据传给客户端 ⑤ 客户端收到数据后, 再用自己的私钥也就是那个随机字符串进行解密,最终得到想要的数据 二、Nginx SSL 配置 1. 先生成一套证书( 这里我们先自己生成证书来做实验,在实际中应该向合法机构购买证书 ) [root@localhost ~]$ cd /usr/local/nginx/conf/ [root@localhost conf]$ openssl genrsa -des3 -out tmp.key 2048 # 生成私钥文件(tmp.key),会让你设置私钥文件的密码 [root@localhost conf]$ openssl rsa - in tmp.key -out ssl.key && rm -f tmp.key # 转换私钥文件(ssl.key),把密码取消掉