docker部署的nginx容器将请求修改为伪https协议

在自定义文件夹a下的ssl文件夹中,通过openssl命令生成SSL证书,然后将证书挂载到nginx容器内相应目录,修改nginx.conf配置文件启用SSL,最后重启容器并检查日志,确保HTTP升级到HTTPS的成功。
摘要由CSDN通过智能技术生成

1.在自定义文件夹a下创建ssl文件夹并cd进去,执行openssl命令生成证书

openssl req -newkey rsa:2048 -nodes -keyout nexwise_rsq_private.key -x509 -days 730 -out nexwise_cert.crt -subj "/C=CN/ST=GD/L=SZ/O=vihoo/OU=dev/CN=192.168.60.199/emailAddress=111@111.com"

参数解释:req:
-x509:指定使用X.509证书签名
-nodes; 忽略密码,要实现nginx自动读取这个文件
-days:证书有效期,天为单位
-newkey rsa:2048:同时生成证书和sslkey (加密强度为RSA 2048)
-keyout SSL文件名
-out 证书文件名
-subj 自定义证书信息(参数名大写) (CN为ip或者域名,emailAddress为邮箱地址)以上参数根据实际需要去填写

执行命令后在该文件夹下生成*.key、*.crt文件,ls确认一下

2.将证书所在目录,挂载到容器内部目录下,添加 - ./debug/gateway-service/ssl:/etc/nginx/ssl
把ssl的证书文件挂载到nginx容器内部

3.重新构建docker容器,使用up -d

4.构建完先登录确认系统是否可用

5.修改nginx.conf文件
修改server内的部分内容,修改完后:wq保存

sever{
    listen 20000 ssl;
    server_name 服务器IP(192.168.60.156);
    #server_name _;
    #以下路径为容器内部的路径
    ssl_certificate /etc/nginx/ssl/nexwise_cert.crt;
    ssl_certificate_key /etc/nginx/ssl/nexwise_rsq_private.key
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    #调优
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM;
    ssl_prefer_server_ciphers on;
}

6.重新构建docker容器,使用restart即可

7.docker容器重启后查看一下网关nginx的日志,同时清除浏览器缓存,访问系统登录页,请求路径由http://{ip}:{port}变为https://{ip}:{port}

因为证书有效性的问题,浏览器第一次访问这个网站会提示不安全,确认继续访问即可。登录上去简单测试一下功能,若没问题则是http升级成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cyufeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值