nginx的ssl证书升级

Https的概述:

- 基于http协议,传输的时候进行加密.如果不使用https,数据传输都是明文的。

应用场景:

- 目前大部分的业务都是使用https加密.
- 企业想使用http 2.0基于https.

部署https加密的流程

  1. 准备好要升级的域名
  2. 根据域名申请https证书(私钥与公钥(ca证书)),自己创建.
  3. 进行配置web/lb进行配置
  4. 跳转http---->https
    image

这是网站没有做https转https的证书

Https加密流程(单台)

部署

 申请的https证书的域名与网站域名一致,才能正常使用.否则用户访问会有警告与提示.

https加密流程

流程:
  1.安装nginx
  2.修改配置文件
  3.创建站点目录
  4.把秘钥移动到站点目录

https加密要修改的地方

server {
  listen 443 ssl;
  #ssl on ; 1.15.0 以后被废弃了.      以前旧版本的了解一下
  server_name bird.zhanshuai.com.cn;  #域名地址
  root   /usr/share/nginx/html;       #服务的首页文件
  #ssl证书的公钥和私钥
  ssl_certificate    /etc/nginx/ssl/bird.zhanshuai.com.cn.pem;   #公钥
  ssl_certificate_key /etc/nginx/ssl/bird.zhanshuai.com.cn.key;   #私钥
  ssl_session_timeout 1d;     #指定ssl会话时间
  ssl_session_tickets off;     #是否使用TLS会话票据
  ssl_protocols  TLSv1.2;     #指定了Nginx应支持的SSL/TLS协议版本
  ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-    POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA;        #定义了一组SSL密码套件,
  ssl_prefer_server_ciphers on;     #使用列出的密码套件列表来优先选择与客户端协商的密码套件

  location / {
    index index.html;
  }
}

http挑转到https

server {
  listen 80;  
  server_name bird.zhanshuai.com.cn;  
  return 301 https://bird.zhanshuai.com.cn$request_uri ;       跳转的域名
}
#http跳转https只需要在http里面加入一行强制跳转到https的命令即可,https的配置不用修改
    server {
      listen 443 ssl;
      #ssl on ; 1.15.0 以后被废弃了.      以前旧版本的了解一下
      server_name bird.zhanshuai.com.cn;  #域名地址
      root   /usr/share/nginx/html;       #服务的首页文件
      #ssl证书的公钥和私钥
      ssl_certificate    /etc/nginx/ssl/bird.zhanshuai.com.cn.pem;   #公钥
      ssl_certificate_key /etc/nginx/ssl/bird.zhanshuai.com.cn.key;   #私钥
      ssl_session_timeout 1d;     #指定ssl会话时间
      ssl_session_tickets off;     #是否使用TLS会话票据
      ssl_protocols  TLSv1.2;     #指定了Nginx应支持的SSL/TLS协议版本
      ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-    POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA;        #定义了一组SSL密码套件,
      ssl_prefer_server_ciphers on;     #使用列出的密码套件列表来优先选择与客户端协商的密码套件

      location / {
        index index.html;
      }
    }

配置成功的图

image

posted @ 2024-04-16 16:10  阿占的运维之路  阅读(137)  评论(0)    收藏  举报