当前位置:   article > 正文

Windows服务器:通过nginx反向代理配置HTTPS、安装SSL证书_windows nginx ssl

windows nginx ssl

先看下效果:
原来的是 http,配置好后 https 也能用了,并且显示为安全链接。
在这里插入图片描述
首先需要 SSL证书
SSL 证书是跟域名绑定的,还有有效期。
windows 下双击可以查看相关信息。
在这里插入图片描述
下载的证书是分 ApacheIISTomcatNginx 的。
我们需要的是 Nginx 文件夹下的 crtkey 这两个文件的。
在这里插入图片描述
下面说下 nginx 的配置过程。
首先通过官网进行下载:https://nginx.org/en/download.html
在这里插入图片描述
然后我们要配置 nginx.conf 这个文件。
在这里插入图片描述
默认的配置文件看起来比较乱,可以把 # 开头的注释行都去掉。
我们直接说最基础的配置点,先保证大家能看懂,后面再慢慢的拓展。
只需在 server 这个里面进行下面的配置即可。
在这里插入图片描述
代码如下:

    server {  
        listen           443 ssl;  
        server_name      www.xxx.xyz;

        ssl_certificate      ssl/scsxxx.xyz_server.crt;
        ssl_certificate_key  ssl/scsxxx.xyz_server.key;

        location / {  
		    proxy_pass http://www.xxx.xyz:端口号;
        }  
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

证书可以在配置文件所在的文件夹下面新建个 ssl 的文件夹,把证书信息放进去再引用。
然后 cmdnginx 里通过 nginx -t 可以查看配置情况。
直接 nginx 就运行了。
这个不要重复运行,关掉 cmd 窗口进程还在,反复运行会生成多个进程,后面改配置后再开个窗口,通过 nginx -s reload 可以重新加载配置项。
在这里插入图片描述
还有就是一定要在服务器管理的安全组里把 443 这个端口放开。
然后就成功啦。

相关参数内容拓展
server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate /path/to/certificate.crt;
    ssl_certificate_key /path/to/private.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;

    # 可选: 配置 SSL 会话缓存以提高性能
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;

    # 可选: 启用 OCSP Stapling 以提高 SSL 验证性能和安全性
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_trusted_certificate /path/to/ssl_trusted_certificate.crt;

    # 可选: 配置 HSTS 以增强安全性
    add_header Strict-Transport-Security "max-age=31536000" always;

    # 可选: 配置证书链文件以支持某些客户端
    # ssl_chain_certificate /path/to/chain_certificate.crt;

    location / {
        # 配置其他服务器设置
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

在上面的配置中:

  • listen 443 ssl; 指定该服务器块监听 443 端口,并启用 SSL
  • ssl_certificatessl_certificate_key 分别指定 SSL 证书文件和密钥文件的路径。
  • ssl_protocols 指定允许的 SSL 协议版本。
  • ssl_prefer_server_ciphers 开启后,服务器端的优先级更高,选择服务器端的加密套件。
  • ssl_session_cachessl_session_timeout 配置 SSL 会话缓存以提高性能。
  • ssl_staplingssl_stapling_verify 开启 OCSP Stapling 以提高 SSL 验证性能和安全性。
  • ssl_trusted_certificate 指定 OCSP Stapling 验证的证书链。
  • add_header Strict-Transport-Security 启用 HSTS 以增强安全性。
  • ssl_chain_certificate 可选,指定证书链文件以支持某些客户端。
本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/766619
推荐阅读
相关标签
  

闽ICP备14008679号