nginx 的 HTTPS 安全配置及 TLS 1.3 踩坑

  • 防止默认配置导致暴漏域名
    • 生成证书配置默认网站
    • ssl_reject_handshake 指令
  • TLS安全配置
  • TLS 1.3 使用

防止默认配置导致暴漏域名

通过IP扫描,然后浏览器HTTPS访问会在证书里暴漏网站域名。

或者通过访问已知的,未配置HTTPS证书的域名,会暴漏有证书的第一个域名

有两种方式,一种是生成一个证书配置一个default_server。

一种是通过nginx 1.19.4 以后的ssl指令配置default_server。

生成证书配置默认网站

生成localhost证书:

cd /usr/local/nginx/conf/ssl/
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout localhost.key-out localhost.crt

配置默认网站:

server {listen 80 default_server;listen 443 ssl default_server;server_name _;ssl_certificate         ssl/localhost.crt;ssl_certificate_key     ssl/localhost.key;return 444;}

通过IP访问不会再暴漏域名

ssl_reject_handshake 指令

nginx版本大于 1.19.4可以使用该指令,无需创建假证书

http://nginx.org/en/docs/http/ngx_http_ssl_module.html

server {listen 80 default_server;listen 443 ssl default_server;server_name _;ssl_reject_handshake on;return 444;}

TLS安全配置

PCI DSS合规认证需要TLS 1.2

查看:https://ssl-config.mozilla.org/

看到TLS 1.2已经是默认配置,并且:

Supports Firefox 27, Android 4.4.2, Chrome 31, Edge, IE 11 on Windows 7, Java 8u31, OpenSSL 1.0.1, Opera 20, and Safari 9

XP系统安装chrome完美支持TLS 1.2,绝大多数环境都能够很好的工作。

XP可用的chrome 49
链接:https://caiyun.139.com/m/i?175CjfVEgFn0o
提取码:Tbo2

kb931125-rootsupd,XP证书补丁kb931125
链接:https://caiyun.139.com/m/i?175CdDrzQiA5d
提取码:SDKS

重点就是:ssl_ciphersssl_prefer_server_ciphers

因为RC4,md5、sha1、des等算法都是不安全的

TLSv1.3 需要openssl 1.1.1版本,目前国内大型网站都未使用,Apple,Mozilla、GitHub都是使用的,握手时间更短,算法更安全。

 ssl_protocols TLSv1.2;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;ssl_prefer_server_ciphers off;

OCSP stapling一般只有Apple系需要

可以通过curl测试,Linux版的curl的tls选项都是正常的,Windows版的向下兼容,不够准确。

curl -I --tlsv1.2 https://www.baidu.com

openssl s_client -host www.baidu.com -port 443 -msg -state -showcerts -tls1_2

TLS 1.3 使用

安装nginx时,需要指定openssl 1.1.1版本

单个域名开启无效,需要default_server中开启。

nginx 的 HTTPS 安全配置及 TLS 1.3 踩坑相关推荐

  1. 为Jupyter notebook配置R kernel过程及踩坑记录

    为Jupyter notebook配置R kernel过程及踩坑记录 注意:本文为作者安装过程及折腾的过程,内容比较冗杂,如果读者想直接创建一个属于自己的子环境则参考: 如下文章: anaconda下 ...

  2. Anaconda配置PyTorch虚拟环境搭建指南踩坑总结

    默认Windows环境(Linux类似,反正Anaconda命令都一样),有支持CUDA的N卡(废话,没N卡跑什么DL www) 这篇踩坑总结只是本人在入门阶段配置环境踩过的一些坑,个人经验难免有疏漏 ...

  3. Ubuntu 20.04 TLS安装(踩坑版)

    Ubuntu 20.04 TLS 安装 前言 安装准备 下载镜像 制作启动盘 预留空间 安装 进入BIOS 界面 一般是这样的 华硕的大概是这样的 基础设置 分区 设置引导 更换国内源 直接设置 终端 ...

  4. nginx对https的配置,nginx解决post请求被请求两次的问题

    前置条件: 将证书放在:nginx目录下的cert目录中,其中证书有:.pem和.key文件 server {listen 80;listen 443;server_name xxxxx;ssl_ce ...

  5. 新手入门新电脑安装配置orb slam2 一步到位不踩坑(ubutun18.04)

    目录 一.安装基础工具 二.安装Pangolin,作为可视化和用户界面 三.安装OpenCV,用于处理图像和特征 (1)下载OpenCV 3.4.1 (2)安装依赖项 (3)编译安装 (4)配置环境, ...

  6. springboot集成redis redis配置手把手交你不踩坑

    前面我们已经介绍过redis的安装配置和使用以及一些redis的基本概念,如果还有小伙伴不太熟悉的话可以翻翻我之前的博客 1.初识redis 从这篇博客开始看,看完这几篇以后相信你对Redis的概念会 ...

  7. ubuntu20.0.4+RTX3090配置深度学习环境的踩坑

    坑一:显卡驱动装不上 参考链接:https://blog.csdn.net/qq_39478403/article/details/109378705 大致步骤跟上面这个文章都差不多,但是在他的步骤1 ...

  8. nginx实现http服务配置

    静态文件 即实现nginx代理指向静态文件,动静分离 主要配置如下: worker_processes 1;events {worker_connections 1024; }http {includ ...

  9. 基于Nginx的https服务

    1.HTTPS协议的实现 1.为什么需要HTTPS? 原因:HTTP不安全 1.传输数据被中间人盗用.信息泄露 2.数据内容劫持.篡改 对传输内容进行加密以及身份验证 2.对称加密 非对称加密 3.H ...

最新文章

  1. html前端开发是什么,web前端开发需要会什么
  2. C#命令行编辑器csc.exe
  3. debian 编译linux内核源码,Debian下为本机编译内核模块的方法
  4. 男人要懂得赞美女人,女人要懂得鼓励男人
  5. python3安装后怎么开启_python3.10 如何下载安装?
  6. Apple计划开发完全定制的GPU架构
  7. Jmeter七、jmeter中的参数化
  8. 两侧广告HTML,网页左右两侧居中的对联广告代码
  9. 佳佳数据恢复软件免费版
  10. 万用表测试软件,最全的万用表使用方法看这里!
  11. 自动化运维脚本模块-stmplib,emai模块
  12. 网站安全漏洞--大全
  13. 教你这么理解 『假脱机打印机系统』
  14. 西北大学发布猴脸识别论文,公开 10 种动物面部数据集
  15. win10与virtualBox共享文件夹
  16. java web设置首页_java web设置默认首页方法
  17. Linux三剑客:grep、sed、awk
  18. Nature给学术界立规矩:ChatGPT等大模型不可以成为作者
  19. Java基础之分支结构--嵌套if选择结构——百米赛跑决赛
  20. CentOS 7 安装 libzip 1.5.2

热门文章

  1. OpenCV-图像着色(采用DNN模块导入深度学习模型)
  2. 咱码农为啥会(珍爱生命)远离企业应用开发
  3. VMware Workstation 16 Pro 中的虚拟机使用宿主机的COM口
  4. 从PEE模式进入VLPS/LLS唤醒之后的状态
  5. float和double的精度区别
  6. vite+cesium加载3DTile数据
  7. 在LAMP兄弟连的日子里
  8. 双向视频会议系统的需求分析
  9. Buffalo LS-QVL安装+配置信息
  10. MP3 Quality Modifier(MP3音质优化)V2.1