Kubernetes Nginx-Ingress | 禁用HSTS/禁止重定向到https
目录
- 前言
- 禁用HSTS
- 禁止重定向到https
- 关闭 HSTS 和设置 ssl-redirect 为 false 的区别
前言
客户请求经过ingress到服务后,默认加上了strict-transport-security,导致客户服务跨域请求失败,具体Response Headers信息如下;
分析
nginx-ingress-controller组件默认是开启HSTS的,有些浏览器第一次基于PLAIN HTTP访问时,服务端(开启HSTS)会在返回给客户端的响应头里携带Non-Authoritative-Reason: HSTS字段,说明服务端支持HSTS,当客户端也支持的情况下下次会直接以HTTPS方式访问服务端。服务端返回的响应头消息体中包含有307 Internal Redirect状态码,具体如下图所示。
nginx-ingress-controller的官方
禁用HSTS
在nginx-ingress-controller对应的config-map中,配置hsts=false
其他控制器,比如traefik,也有类似的配置
在浏览器端HSTS默认是有缓存的,当关闭nginx-ingress-controller组件的HSTS后,记得清理缓存和cookie
禁止重定向到https
-
全局设置:
在nginx-ingress-controller对应的config-map中,配置
ssl-redirect=false -
单个ingress设置:
找到对应的ingress,设置注解(annotations): nginx.ingress.kubernetes.io/ssl-redirect=false
关闭 HSTS 和设置 ssl-redirect 为 false 的区别
关闭 HSTS 和设置 ssl-redirect 为 false 在 Nginx Ingress Controller 中是两个不同的配置,它们各自有不同的作用和影响。
关闭 HSTS
作用:
HSTS(HTTP Strict Transport Security)是一种安全策略,它告诉浏览器只能通过 HTTPS 访问网站。关闭 HSTS 意味着浏览器不再被强制要求使用 HTTPS 访问网站。
影响:
关闭后,之前访问过该网站的浏览器可能仍然会强制使用 HTTPS(因为 HSTS 策略在浏览器中有缓存),但新访问的浏览器将不再受此限制。
安全性降低:关闭 HSTS 可能会使网站更容易受到中间人攻击(MITM),因为攻击者可以拦截并篡改不安全的 HTTP 请求。
配置方式:
在 Nginx Ingress Controller 的 ConfigMap 中设置 hsts=false。
设置 ssl-redirect 为 false
作用:
ssl-redirect 注解用于控制是否将 HTTP 请求重定向到 HTTPS。将其设置为 false 意味着 Nginx Ingress Controller 将不再自动将 HTTP 请求重定向到 HTTPS。
影响:
HTTP 请求将不再被重定向到 HTTPS,用户可以通过 HTTP 访问网站。
安全性降低:允许 HTTP 访问意味着数据传输不再加密,可能会暴露敏感信息。
配置方式:
可以通过两种方式设置:
全局设置(尽管这不是标准做法,因为通常这个设置是通过 Ingress 资源的注解来实现的):在 Nginx Ingress Controller 的 ConfigMap 中尝试设置(但请注意,这可能需要额外的配置或修改,因为 Nginx Ingress Controller 的官方文档可能并没有直接提到可以在 ConfigMap 中设置 ssl-redirect)。
针对单个 Ingress 设置:在特定的 Ingress 资源中添加注解 nginx.ingress.kubernetes.io/ssl-redirect: “false”。
区别总结
作用不同:关闭 HSTS 是告诉浏览器不再强制使用 HTTPS 访问网站;设置 ssl-redirect 为 false 是控制 Nginx Ingress Controller 不再将 HTTP 请求重定向到 HTTPS。
影响范围不同:关闭 HSTS 影响的是浏览器的行为;设置 ssl-redirect 为 false 影响的是 Nginx Ingress Controller 的行为。
安全性影响:两者都会降低网站的安全性,但方式不同。关闭 HSTS 可能会使网站更容易受到中间人攻击;设置 ssl-redirect 为 false 则允许不安全的 HTTP 访问。
在生产环境中,通常建议保持 HSTS 和 HTTPS 重定向开启,以确保数据传输的安全性和用户隐私的保护。如果确实需要关闭这些设置,请务必充分了解其安全性和潜在风险。
相关文章:
Kubernetes Nginx-Ingress | 禁用HSTS/禁止重定向到https
目录 前言禁用HSTS禁止重定向到https关闭 HSTS 和设置 ssl-redirect 为 false 的区别 前言 客户请求经过ingress到服务后,默认加上了strict-transport-security,导致客户服务跨域请求失败,具体Response Headers信息如下; 分析 n…...
TortoiseGit的下载、安装和配置
一、TortoiseGit的简介 tortoiseGit是一个开放的git版本控制系统的源客户端,支持Winxp/vista/win7.该软件功能和git一样 不同的是:git是命令行操作模式,tortoiseGit界面化操作模式,不用记git相关命令就可以直接操作,读…...
如何绕过IP禁令
网站、游戏和应用程序可以屏蔽特定IP地址,从而阻止使用该IP地址的任何人访问其服务。这称为IP禁令。管理员可以出于多种原因(例如发出过多请求或可疑活动)屏蔽IP地址。但是,这些禁令会使收集数据或访问在线内容变得更加困难。 一…...
Vue3的provide和inject实现多级传递的原理
先来看个demo,这个是父组件,代码如下: <template><ChildDemo /> </template><script setup> import ChildDemo from "./child.vue"; import { ref, provide } from "vue"; // 提供响应式的值 c…...
使用html2canvas实现前端截图
一、主要功能 网页截图:html2canvas通过读取DOM结构和元素的CSS样式,在客户端生成图像,不依赖于服务端的渲染。它可以将指定的DOM元素渲染为画布(canvas),并生成图像。多种输出格式:生成的图像…...
使用 Python 爬取某网站简历模板(bs4/lxml+协程)
使用 Python 爬取站长素材简历模板 简介 在本教程中,我们将学习如何使用 Python 来爬取站长素材网站上的简历模板。我们将使用requests和BeautifulSoup库来发送 HTTP 请求和解析 HTML 页面。本教程将分为两个部分:第一部分是使用BeautifulSoup的方法&am…...
深度学习模型中音频流式处理
音频流式处理的介绍 在现代深度学习应用中,音频处理是一个重要的领域,尤其是在语音识别、音乐生成和音频分类等任务中。流式处理(Streaming Processing)是一种有效的处理方式,它允许模型逐帧处理音频数据,…...
C语言(字符数组和字符指针)
字符串实现 在C语言中,表示一个字符串有以下两种形式: 用字符数组存放一个字符串。用字符指针指向一个字符串。 案例 #include <stdio.h>/*** 方式1:使用字符数组实现字符串*/ void str_test1(){// 定义一个伪字符串char str[] &q…...
SkyWalking Helm Chart 4.7.0 安装、配置
https://skywalking.apache.org/events/release-apache-skywalking-kubernetes-helm-chart-4.7.0/https://github.com/apache/skywalking-helm/tree/v4.7.0https://skywalking.apache.org/zh/2020-04-19-skywalking-quick-start/简介 skywalking 是分布式系统的 APM(Applicat…...
微搭低代码AI组件单词消消乐从0到1实践
目录 1 为什么要开发单词消消乐2 需要具备什么功能3 采用什么技术方案实现4 逻辑设计4.1 数据结构设计4.2 游戏的核心逻辑4.3 数据设计 5 代码详解5.1 导入依赖5.2 定义函数组件5.3 数据初始化5.4 状态定义5.5 打乱解释的逻辑5.6 定义选择单词的函数5.7 定义选择解释的函数5.8 …...
23种设计模式之中介者模式
目录 1. 简介2. 代码2.1 Mediator (中介者接口)2.2 ChatRoom (具体中介者类)2.3 User (同事接口)2.4 ChatUser (具体同事类)2.5 Test (测试)2.6 运行结果 3. …...
【Golang】Go语言编程思想(六):Channel,第六节,并发编程模式
并发模式 下例重新对 channel 的用法进行回顾: package mainimport ("fmt""math/rand""time" )func msgGen(name string) chan string {c : make(chan string)go func(name string) { // 在这个 goroutine 当中向外发送数据i : 0fo…...
unity打包web,如何减小文件体积,特别是 Build.wasm.gz
unity打包WebGL,使用的是wasw,最终生成的Build.wasm.gz体积很大,有6.5M,有几个方法可以稍微减小这个文件的大小 1. 裁剪引擎代码: 此步可将大小从6.5减小到 6.2(此项默认开启,只是改了裁剪等级…...
go引入skywalking
前置条件:安装好jdk11,linux服务器(centos7.9),go版本(我的是1.18,1.21都可以) 1.下载skywalking Downloads | Apache SkyWalking 2.下载agent源码 Downloads | Apache SkyWalkin…...
大华DSS数字监控系统 attachment_downloadAtt.action 任意文件下载漏洞复现
0x01 产品描述: 大华 DSS 数字监控系统是大华开发的一款安防视频监控系统,拥有实时监视、云台操作、录像回放、报警处理、设备管理等功能。0x02 漏洞描述: 大华DSS数字监控系统 attachment_downloadAtt.action接口存在任意文件读取漏洞,未经身份验证攻击者可通过该漏洞读取…...
qt 封装 调用 dll
这个目录下 ,第一个收藏的这个 ,可以用, 但是有几个地方要注意 第一.需要将dll的头文件添加到qt的文件夹里面 第二,需要在pro文件里面添加动态库路径 第三,如果调用dll失败,那么大概需要将dll文件放在e…...
Python使用Selenium库获取 网页节点元素、名称、内容的方法
我们要用到一些网页源码信息,例如获取一些节点的class内容, 除了使用Beautifulsoup来解析,还可以直接用Selenium库打印节点(元素)名称,用来获取元素的文本内容或者标签名。 例如获取下面的class的内容&am…...
系统安全——访问控制访问控制
访问控制 概念 什么是访问控制 access control 为用户对系统资源提供最大限度共享的基础上,对用户的访问权进行管理,防止对信息的非授权篡改和滥用 访问控制作用 保证用户在系统安全策略下正常工作 拒绝非法用户的非授权访问请求 拒绝合法用户越权…...
SQL Server 数据库还原到某个时点(完整恢复模式)
将 SQL Server 数据库还原到某个时点(完整恢复模式) 适用范围: SQL Server 本主题介绍如何使用 SQL Server Management Studio 或 Transact-SQL 将数据库还原到 SQL Server 中的某个时间点。 本主题仅与使用完整恢复模式或大容量日志恢复模…...
埃隆马斯克X-AI发布Grok-2大模型,快来体验~
引言 近年来,人工智能技术的快速发展推动了大语言模型的广泛应用。无论是日常生活中的智能助手,还是行业中的自动化解决方案,大语言模型都扮演着越来越重要的角色。2024年,X-AI推出了新一代的大模型——Grok-2,这款模…...
Python工厂设计模式:简化对象创建
Python工厂设计模式:简化对象创建 引言什么是工厂模式?简单工厂模式示例定义基类和子类创建工厂类使用工厂创建对象 优点使用场景总结 引言 在编程中,我们经常需要创建不同的对象,但有时创建对象的逻辑可能会变得复杂。工厂设计模…...
【隐私计算篇】隐私集合求交(PSI)原理深入浅出
隐私集合求交技术是多方安全计算领域的一个子问题,通常也被称为安全求交、隐私保护集合交集或者隐私交集技术等,其目的是允许持有各自数据集的双方或者多方,执行两方或者多方集合的交集计算,当PSI执行完成,一方或者两方…...
工作中常用的8种设计模式
前言 设计模式在我们日常的软件开发中无处不在,它们帮助我们编写更易扩展、更具可读性的代码。 今天结合我实际工作场景和源码实例,跟大家一起聊聊工作中最常用的8种设计模式,希望对你会有所帮助。 1. 单例模式 单例模式确保一个类只有一…...
Qwen 论文阅读记录
本文仅作自己初步熟悉大模型,梳理之用,慢慢会更改/增加/删除,部分细节尚未解释,希望不断学习之后,能够完善补充。若有同道之人,欢迎指正探讨。 关于后面的code-qwen and math-qwen,我个人认为依…...
自动驾驶:百年演进
亲爱的小伙伴们😘,在求知的漫漫旅途中,若你对深度学习的奥秘、JAVA 、PYTHON与SAP 的奇妙世界,亦或是读研论文的撰写攻略有所探寻🧐,那不妨给我一个小小的关注吧🥰。我会精心筹备,在…...
SSM 校园一卡通密钥管理系统 PF 于校园图书借阅管理的安全保障
摘 要 传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装校园一卡通密钥管理系统软件来发挥其高效地信息处理的作用&a…...
什么叫中间件服务器?
什么叫中间件服务器?它在软件架构中扮演着怎样的角色?在现代应用程序开发中,中间件服务器的概念很多人对它并不太熟悉,但其实它的作用却不小。 中间件服务器是一种连接不同软件应用程序的中介。想象一下,在一个大型企…...
【docker】12. Docker Volume(存储卷)
什么是存储卷? 存储卷就是将宿主机的本地文件系统中存在的某个目录直接与容器内部的文件系统上的某一目录建立绑定关系。这就意味着,当我们在容器中的这个目录下写入数据时,容器会将其内容直接写入到宿主机上与此容器建立了绑定关系的目录。 在宿主机上…...
SpringBoot【八】mybatis-plus条件构造器使用手册!
一、前言🔥 环境说明:Windows10 Idea2021.3.2 Jdk1.8 SpringBoot 2.3.1.RELEASE 经过上一期的mybatis-plus 入门教学,想必大家对它不是非常陌生了吧,这期呢,我主要是围绕以下几点展开,重点给大家介绍 里…...
OpenAI直播发布第4天:ChatGPT Canvas全面升级,免费开放!
大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,专注于分享AI全维度知识,包括但不限于AI科普,AI工…...
做网站接口多少钱/网站搜索关键词优化
环境要求 1, 配置nfs存储卷 1,在docker swarm集群中所有节点都确认安装nfs客户端软件 # yum install nfs-utils rpcbind -y 2, 在192.168.122.1 上搭建nfs,共享目录给docker swarm集群中所有节点挂载 [rootnfs ~]# mkdir /opt/dockervolume [rootnfs ~]# vim /etc/exports …...
wordpress响应+延时/长沙网站搭建关键词排名
p:nth-child(n); 访问该元素p的父元素,在访问p元素的父元素的所有子元素(不仅含有p,可能还包含h1,h2……),然后按他们的先后排列顺序来选择,不能为0(实验不行)。 关键:1.是否与p相同的元素,2.是…...
有什么教做甜品的网站/网站页面排名优化
时间很快,2016级的小鲜肉们已经在猜测老贺长什么样子了。 从在线作业到翻转课堂,几届的学生跟着我受了不少苦。话虽这么说,并不代表2016级的就要轻松了(老贺虚伪到底!)。不过,苦孩子们&…...
做网站用php哪些知识点/自己建网站怎么建
声明: ● 本专栏是自己在学习慕课网Liuyubobobo老师的《算法与数据结构体系课》 时,自己做的笔记; ● 主要目的是供自己学习、总结、回顾之用,其中很多内容书写记录的时候包含了很多个人语言; ● 读者如果想更好的理解…...
房产信息网显示限售/长沙seo代理
上下文:我正在将一个开源服务器软件(以及编写相关文档)从Debian / Ubuntu移植到CentOS / RHEL.为了使软件正确运行,我需要在Mysql配置中添加十几个特定参数(例如:增加max_allowed_packet).从Debian的角度来看,我知道我可以通过在/etc/mysql.d中添加一…...
淄博哪里有网站建设平台/产品怎么做市场推广
1.原因:刚进入这家公司,给同事交接完,直接使用他的电脑,每次提交代码都显示他的用户名,本以为是电脑系统名称呢,可是修改了之后没有效果 2.解决方案: 打开C盘里的 .gitconfig文件 看下git的用户…...