绕过Nginx Host限制

news2024/11/15 8:23:59

目录

  • 绕过Nginx Host限制
    • SNI
    • 第三种方法:
    • 总结

绕过Nginx Host限制

SNI

SNI(Server Name Indication)是 TLS 的扩展,这允许在握手过程开始时通过客户端告诉它正在连接的服务器的主机名称。

作用:用来解决一个服务器拥有多个域名的情况。

在客户端和服务端建立 HTTPS 的过程中要先进行 TLS 握手,握手后会将 HTTP 报文使用协商好的密钥加密传输。

第三种方法:

我们在发送https数据包的时候,SNI中指定的域名是example2.com,而无需和HTTP报文中的Host头保持一致,Nginx会选择SNI中的域名作为Server Name。
在这里插入图片描述
上课时,某个同学的课前演讲中提到,SNI的访问方式是域名加端口访问,而只有域名SNI,会默认访问第一个配置界面。
下面我们分别弄了三个域名不同,端口相同的主机配置,和一个不同域名不同端口的主机配置。
请添加图片描述
请添加图片描述
请添加图片描述
由于第一个配置是nginx 欢迎界面,所以在不同域名相同端口的情况下,SNI会将nginx 欢迎界面 作为访问界面,前提是request 中的host 改错

下面是 自发证书的ssl 配置,www.sslh.com 端口为443
在这里插入图片描述
SNI基于端口加域名正常访问内容

总结

这次测试,说明了SNI 是基于域名加端口来区分的,要成功正常访问,就得是 不同域名不同端口。
这次测试中 发现一个关于https的问题—curl https://www.sslh.com -k 访问被拒绝。刚开始 我以为是防火墙的原因,关闭防火墙,发现还是访问不了,然后 iptables -nvxL --line-number 发现没有443的iptables 规则,然后就添加了一条443规则,发现还是服务拒绝,然后想到是不是 selinux 的问题 ,然后配置临时selinux setenforce 0 默认设置为permissive,发现还是不行。
解决方法:nginx 新增端口 不能 ./nginx -s reload ,需要./nginx -s quit 然后在启动nginx 服务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/341000.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机器视觉 多模态学习11篇经典论文代码以及解读

此处整理了深度学习-机器视觉,最新的发展方向-多模态学习,中的11篇经典论文,整理了相关解读博客和对应的Github代码,看完此系列论文和博客,相信你能快速切入这个方向。每篇论文、博客或代码都有…

【C++1】函数重载,类和对象,引用,string类,vector容器,类继承和多态,/socket,进程信号,public,ooci

文章目录1.函数重载:writetofile(),Ctrue和false,C0和非02.类和对象:vprintf2.1 构造函数:对成员变量初始化2.2 析构函数:一个类只有一个,不允许被重载3.引用:C中&取地址&#x…

Elasticsearch在Windows系统下的安装

Elasticsearch在Windows系统下的安装Elasticsearch在Windows系统下的安装1、安装 Java 环境2、安装 Elasticsearch(1)下载 Elasticsearch 的 zip 安装包(2)下载安装包后解压文件(3)启动 Elasticsearch 服务…

C++多态(下)

大家好!上一篇文章,主要是说了多态的概念和使用。这篇文章就会说一下多态的底层原理,如果对多态的使用和概念不清的可以看一下上篇文章(多态概念)。 文章目录1. 多态的原理1.1 虚函数表1.2 多态的原理1.3 动态绑定与静态绑定2. 多继承关系的…

第四章 MergeTree原理分析

一、存储结构 1.1 表引擎语法结构 CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] (name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1],name2 [type2] [DEFAULT|MATERIALIZED|ALIAS expr2],...INDEX index_name1 expr1 TYPE type1(...) GRANULARITY va…

【遇见青山】项目难点:解决超卖问题

【遇见青山】项目难点:解决超卖问题1.乐观锁方案2.悲观锁方案1.乐观锁方案 原始实现下单功能的方法: /*** 秒杀实现** param voucherId 秒杀券的ID* return Result*/ Override Transactional public Result seckillVoucher(Long voucherId) {// 查询优…

备战蓝桥杯【高精度加法和高精度减法】

🌹作者:云小逸 📝个人主页:云小逸的主页 📝Github:云小逸的Github 🤟motto:要敢于一个人默默的面对自己,强大自己才是核心。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前…

IDEA中使用自定义的maven

步骤 1.下载maven maven下载 2.配置maven 2.1设置环境变量 1.在“环境环境“–“系统环境“–“path”中加入(设置到bin目录下) 2.测试环境变量是否成功 C:\Users>mvn -v //在控制台输入mav -v,看是否输出以下结果 Apache Maven 3.9.0 (9b…

《MySQL系列-InnoDB引擎23》文件-InnoDB存储引擎文件-重做日志文件

InnoDB存储引擎文件 之前介绍的文件都是MySQL数据库本身的文件,和存储引擎无关。除了这些文件外,每个表存储引擎都有其自己独有的文件。本节将具体介绍与InnoDB存储引擎密切相关的文件,这些文件包括重做日志文件、表空间文件。 重做日志文件…

Docker的资源控制管理

目录 一、CPU控制 1、设置CPU使用率上限 2、设置CPU资源占用比(设置多个容器时才有效) 3、设置容器绑定指定的CPU 二、对内存使用进行限制 1、创建指定物理内存的容器 2、创建指定物理内存和swap的容器 3、 对磁盘IO配额控制(blkio&a…

使用Docker容器部署java运行环境(java8 + mysql5.7 + redis5.0 + nginx1.14.1

环境:阿里云ECS服务器一.Docker环境安装1.1 安装工具sudo yum install -y yum-utils device-mapper-persistent-data lvm21.2 为yum源添加docker仓库位置yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo1.3 将软件…

【微信小游戏开发笔记】第二节:Cocos开发界面常用功能简介

Cocos开发界面常用功能简介 本章只介绍微信小游戏开发时常用的功能,其他功能不常用,写多了记不住(其实是懒 -_-!): 层级管理器,用于操作各个节点。资源管理器,用于操作各种文件资源。场景编辑…

SpringMVC--简介和入门案例

SpringMVC简介 什么是MVC MVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分 M:Model,模型层,指工程中的JavaBean,作用是处理数据 JavaBean分为两类: 一类称为实体类Bean:专门存储业务数据的,如 Studen…

西湖论剑初赛web wp

Node Magical Login 简单的js代码审计。 Flag分成了两部分。 第一部分: 这里就简单的判断了一下user是否等于admin,直接绕过。 第二部分: checkcode ! “aGr5AtSp55dRacer”,让其为真,利用数组绕过。 Flag为&#x…

家政服务小程序实战教程03-创建自定义应用

我们上一篇讲解了创建模型应用,模型应用是给管理员使用的。普通用户日常办理业务还是在小程序完成。 微搭中的小程序需要通过创建自定义应用来创建,进入控制台,点击应用,点击新建应用,选择新建自定义应用 输入应用的名…

微信小程序 java家校通Springboot中小学家校联系电子作业系统

小程序前端框架:uniapp 小程序运行软件:微信开发者 后端技术:javaSsm(SpringSpringMVCMyBatis)vue.js 后端开发环境:idea/eclipse 数据库:mysql 通过对各种资料的收集,了解到“校讯通”是联系社会的窗口,是实现家校联系工作和学校…

【参加CUDA线上训练营】零基础cuda—矩阵转置实现及其优化

【参加CUDA线上训练营】零基础cuda—矩阵转置实现及其优化1.不使用Shared Memory2.使用Shared Memory3.使用Shared Memory,并加入No Bank Conflicts4.效果对比参考文献本文参考Nvidia官方blog[An Efficient Matrix Transpose in CUDA C/C及其对应的github代码transp…

可视化图表的思路

数据表达 excel — 小量级一次性的数据处理 Tableau等BI — 批量的数据读取与分析 python — 复杂的数据清洗、爬虫和算法建模 图表展示原则:客观,高效,直观 表达格式:观点数据补充信息图表 图表选择思路 规模、趋势、占比、关…

RabbitMQ-延迟队列

一、介绍延迟队列,队列内部是有序的,最重要的特性就体现在他的延迟属性上,延时队列中的元素是希望在指定时间到了或之前取出和处理,简单来说,延时队列就是用来存放需要在指定时间被处理的元素的队列。 二、sprin…

TCP的协议格式 --- 20字节固定长度 + 40字节可选数据

目录 一、 20字节的固定长度 16位源端口和16位目的端口号,32位序号,32位确认属序号,4位首部长度(需要乘4) 保留(6位) 16位窗口大小 16位的校验和16位的紧急指针 二、40字节可选数据 1.2.1、…