侧边栏壁纸
博主头像
一朵云的博客博主等级

拥抱生活,向阳而生。

  • 累计撰写 67 篇文章
  • 累计创建 25 个标签
  • 累计收到 7 条评论

目 录CONTENT

文章目录

Nginx -- 配置SSL(https)

一朵云
2022-05-27 / 0 评论 / 2 点赞 / 8877 阅读 / 3947 字

介绍

  SSL即Secure Sockets Layer,翻译成中文是安全套接字协议,SSL及其TLS是为网络通信提供安全及数据完整性的一种安全协议。

  SSL证书是遵守SSL协议的一种数字证书,由正规的数字证书颁发机构签发,主要用来数据加密传输和服务器身份认证,是实现网站https加密传输的唯一途径。

  下面将介绍基于docker安装的Nginx如何进行SSL配置。

前提

  该篇章将不再讲述如何基于docker安装Nginx了,不清楚的可以查看之前的文章 -- Nginx -- 基于Docker的安装

  已有ICP备案通过的域名,以我为例,是在腾讯云注册的域名,所以后续下载证书等操作,都是在腾讯云操作的。

步骤:

1、下载SSL证书

image.png

image.png

2、解压证书并上传服务器

仅需要上传这两个文件yiduoyun.space_bundle.crt,yiduoyun.space.key(每个人的证书名称都可能不一样,认准后缀名即可)

image.png

3、确认docker的映射路径,用于后续配置文件中配置证书路径

#查找nginx容器的名称
docker ps

#查找docker容器映射关系
docker inspect my_nginx | grep Mounts -A 30

image.png

4、编辑nginx配置文件

具体配置看个人,证书路径用docker中nginx的路径,我们的文件放在对应的映射路径下。

server {
        #SSL 访问端口号为 443
        listen 443 ssl;
        #填写绑定证书的域名
        server_name  www.yiduoyun.space;
        #证书文件名称
        ssl_certificate /etc/nginx/conf.d/yiduoyun.space_bundle.crt;
        #私钥文件名称
        ssl_certificate_key /etc/nginx/conf.d/yiduoyun.space.key;
        ssl_session_timeout 5m;
        #请按照以下协议配置
        ssl_protocols TLSv1.2 TLSv1.3;
        #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;
        location / {
           #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
           #例如,您的网站运行目录在/etc/www下,则填写/etc/www。
           #配置反向代理
           proxy_pass   http://www.yiduoyun.space:8090;
           #避免原ip统计不到
           proxy_set_header  Host  $host;
           proxy_set_header  X-Real-IP  $remote_addr;
        }
    }

5、重启docker的nginx容器服务

docker restart my_nginx

6、服务器安全组开放443端口

image.png

7、使用https访问域名。

image.png

待补充

1、禁止ip访问

2、http转发为https

2

评论区