nginx部署SSL证书,同一个IP绑定多个单域名证书,实现https请求,支持TLSv1.2

nginx部署SSL证书,同一个IP绑定多个单域名证书,实现https请求,支持TLSv1.2

一、目录介绍

/usr/local/nginx1.18.0 是ngnix安装后的目录
/usr/local/nginx1.18.0/conf/cert 是证书存放的位置
/usr/local/nginx1.18.0/conf/nginx.conf 是nginx的配置文件
/usr/local/src 是源码tar包下载文件
/usr/local/nginx1.18.0/sbin 是nginx可执行文件父目录 ,在该目录下可以执行nginx命令

二、 注意事项

nginx 和OpenSSL升级和安装时同样的步骤。这里openSSL为1.1.1版本(为了支持TLSv1.2)在安装新的nginx记得先kill掉旧nginx进程。不需要再次安装gcc 和pcre

命令

查看nginx端口号命令

[root@VM-0-10-centos sbin]# netstat -naptu|grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      12322/nginx: master 
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      12322/nginx: master 

结束nginx

[root@VM-0-10-centos sbin]# ./nginx -s stop

启动nginx

[root@VM-0-10-centos sbin]# ./nginx -s reload

三、开始安装

  1. 下载编译环境
    yum -y install gcc
    yum -y install gcc-c++
    yum install -y zlib-devel
  2. 切换目录 下载pcre
  3. cd /usr/local/src/
  4. wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
  5. tar zxvf pcre-8.35
  6. 编译安装
  7. cd pcre-8.35
  8. ./configure
  9. make && make install
  10. 查看pcre版本确认安装成功
  11. pcre-config --version
  12. 安装OpenSSL,用来支持绑定多个单域名证书
  13. wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz
  14. tar zxvf ./openssl-1.1.1g.tar.gz
  15. 安装ngnix
  16. cd /usr/local/src/
  17. wget http://nginx.org/download/nginx-1.18.0.tar.gz
  18. tar zxf nginx-1.18.0.tar.gz
  19. cd nginx-1.18.0
  20. ./configure --prefix=/usr/local/nginx1.18.0 --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=../openssl-1.1.1g
  21. make && make install
  22. 查看ngnix版本
  23. /usr/local/nginx1.18.0/sbin/nginx -V
  24. 结果如下即正确
[root@VM-0-10-centos sbin]# ./nginx -V
nginx version: nginx/1.18.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.1.1g  21 Apr 2020
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx1.18.0 --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=../openssl-1.1.1g

  1. 配置ngnix.conf
  2. cd /usr/local/nginx1.18.0/conf
  3. 编辑
  4. vim ngnix.conf
  5. 按下 i 键,进入编辑模式,实现https请求只需修改https字段
  6. 默认监听443端口 ,nginx会根据server_name字段自动匹配代理
# HTTPS server
    #
    server {
        listen       443 ssl;   
        server_name  你自己的域名;

        ssl_certificate      cert/xxx.pem;
        ssl_certificate_key  cert/xxx.key;
        ssl_session_timeout  5m;

        ssl_ciphers  ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers  on;
        # 替换为自己后端的 ip:port 
        # /demo是一个通配符 参考这  https://www.cnblogs.com/littleorange7/p/12850516.html
        location /demo {
            proxy_pass http://ip:port; 
        }
    }

  1. 上传pem 和key
cd /usr/local/nginx1.8.0/conf
mkdir cert
利用rz上传至改文件夹
  1. cd /usr/local/nginx1.8.0/sbin

  2. 在logs文件夹下生成pid文件

  3. ./nginx -c /usr/local/nginx1.8.0/conf/nginx.conf

  4. 加载配置文件

  5. ./nginx -s reload

  6. 浏览器输入 https://你的域名,结果如下
    在这里插入图片描述

  7. 如何访问后端 (demo为网页context-path配置字段,根据项目实际配置的自行更改,getAllEquipmentNames为后端接口名)

  8. https://你的域名/demo/getAllEquipmentNames
    即可自动代理为
    http://ip:port/demo/getAllEquipmentNames

  9. 参考

https://blog.csdn.net/chen3888015/article/details/80907973?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-2&spm=1001.2101.3001.4242

https://www.cnblogs.com/beyang/p/7718463.html

https://www.runoob.com/linux/nginx-install-setup.html

https://cloud.tencent.com/developer/labs/lab/10004?fromSource=gwzcw.436801.436801.436801#stage-4-step-1-help

https://help.aliyun.com/document_detail/98728.html?spm=a2c4g.11186623.2.14.71734215rsDMsc

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值