使用SVCB/HTTPS记录隐藏和固定Web服务端口

news/2025/10/2 17:54:09/文章来源:https://www.cnblogs.com/ie123610/p/19123702

使用SVCB/HTTPS记录隐藏和固定Web服务端口

背景

在之前的教程中我们实现了使用 重定向 来 “固定” stun穿透后web服务的端口
其主要的效果是 在访问穿透后的web服务时免除输入端口
这个方法不仅适用于stun穿透 也适合运行在IPv6非常规端口上的web服务

有关什么是 “隐藏端口” 的问题详见之前的教程 此处不再进行解释:
「LUCKY STUN穿透」使用Cloudflare的页面规则固定和隐藏网页端口
「扩展篇」使用Cloudflare的重定向规则传递资源路径和查询字符串


重定向方案

在之前的教程中使用的都是重定向方案
即需要一台开放端口的服务器加以辅助

在地址栏中输入并访问的地址是辅助服务器的地址
访问后 辅助服务器发送重定向响应 指向实际访问的IP及其端口
事实上重定向还有显性和隐性之分

显性重定向

在之前的教程中使用的重定向其实都是 显性重定向
即在浏览器地址栏中可以看到重定向前后地址的变化

这种方案除了会在浏览器地址栏中看到地址或端口变化外 其实没有太大的缺点
兼容性相对较好 重定向对于http来说是非常基本的操作

有些网页服务有专属的APP 以提供更好的服务效果
但这些APP大都不支持重定向 不过这种适配对APP来说起来相对简单

隐性重定向

隐性重定向 相比起 显性重定向 最直观的区别就是
浏览器地址栏中的地址不会发生变化

其实这个所谓的隐性重定向 使用的是iframe框架元素 而非真正的重定向
这个iframe元素能够将另一个 HTML 页面嵌入到当前页面中
简单来说就在当前页面里面又插入了网页

其有些类似于Windows中的嵌套窗口

当然地址栏的变化并没有消失
其只是从浏览器的地址栏中转移到了iframe框架的地址栏中

相比其显性重定向 隐性重定向的兼容性其实更差
一些元素和网页可能不被允许镶嵌在iframe框架中
而对于APP来说兼容和适配更无可能 因为iframe框架只能用于浏览器显示

SVCB/HTTPS 记录

这个SVCB记录与之前教程中介绍过的SRV记录有些相似
可以使用DNS记录来指示 服务所运行的端口

SRV记录(RFC 2782)早在2000年就完成标准化
而SVCB记录到2023年才完成标准化(RFC 9461和RFC 9460)

SVCB记录所提能供的服务远比SRV要多 其不仅仅用于指示服务端口
不过在本教程中 主要使用其来“隐藏”WEB服务的端口

HTTPS是SVCB记录中的一种 专门用于指示HTTPS服务参数
在设置/查询记录类型的时候需要注意区分

一般工作流程

  1. 客户端同时发起 A/AAAA 和 HTTPS 记录(增加 50% 的查询量)
  2. 如果 HTTPS 记录是别名模式,则需要查询指向域名的 A/AAAA 和 HTTPS 记录
  3. 客户端需要查询服务模式下目标域名的 A/AAAA 记录
  4. DNS 递归解析服务器可以通过附加字段提供这些记录

ECH 记录的特殊要求:
客户端需要在收到 HTTPS 查询结果之后再发起 TLS 连接,以防服务端开启 ECH
如果 HTTPS 查询超时,客户端不能假设服务端不支持 ECH,以防降级攻击

与之前的重定向方案相比 使用HTTPS记录无需 开放端口的服务器支持
其相当于一个 “无源” 方案 更适合那些不提供重定向/URL转发功能的DNS提供商
而且未来APP的适配也相对容易 先发https查询 再根据返回发起https连接


浏览器支持问题

由于SVCB记录是一个非常新的记录类型
目前占绝对主流的Chrome浏览器尚不支持(2025.8)
不过火狐浏览器(v89+)和苹果的Safari浏览器已经支持

由于缺乏苹果设备 故无法测试 SVCB/HTTPS记录在Safari浏览器上的支持情况
但一些文章中的测试 显示 至少在 IOS16中的Safari浏览器就已经支持且不需要任何特殊设置

由于Safari浏览器只能运行在IOS或MAC OS上 即无法非苹果设备设备上使用
故本教程之后的内容将主要讲解使用火狐浏览器访问的方法


设置 HTTPS 记录

由于是较新的记录类型 目前并非所有DNS服务商都提供SVCB/HTTPS记录
这里使用的是cloudflare(下文简称CF)国内的提供商中腾讯云和阿里云都已经支持HTTPS了

添加传统记录

这里的传统记录指的是 A或AAAA记录 也就是IPv4或IPv6解析
同时关闭CF的代理功能(小云朵) 记录的名称可自定义 这里使用的是 svcb
(在域名中使用https似乎会有奇怪的问题)

这里使用 ie12.com 作为示例域名
填写完成后的 IPv4记录 即为 svcb.ie12.com

示例

添加HTTPS记录

HTTPS记录也是支持泛域名解析的 例如 XXX.svcb.ie12.com
对应之前教程中stun跳转后的域名 XXX.stun.ie12.com 这里为了方便演示 没有使用泛域名

示例

类型 选择 HTTPS
名称应与之前设置的传统记录名称相同

优先级 应大于0
0 表示别名模式 相当于传统记录中的 cname
1-65535 表示服务模式 也是我们需要的模式

目标 填写一个英文状态下的句号
表示指向自身 因为用的是服务模式
如果是别名模式 则填写需要指向的域名

部分是最重要的 web服务的端口号需要填写在这里
填写 port="实际服务端口"

还可以填写服务器使用的http版本号
如果使用lucky做反向代理的话 默认应该为 http2
填写 alpn="h2" 两个参数之间用空格隔开

此选项还有助于浏览器直接发起http3请求(QUIC)
而不需要先通过http2探测服务端是否支持 不过此处我们不需要该功能

IP提示选项

即示例中的 IPv4hint 和IPv6hint
从理论上来讲其可以用于加速 dns 解析过程
即当 HTTPS 记录含有 IP 提示信息时 可以不用再查询目标域名的IP地址

但目前仍然需要有传统记录指示IP 浏览器才会尝试进行HTTPS查询
这可能是火狐浏览器的特性造成的 就目前的情况 该选项无实际作用

检视解析效果

目前Windows上无法完成SVCB或者HTTPS的查询
Linux上也需要专门的DNS查询软件

这里直接使用在线的HTTPS记录查询:链接
输入之前设置的域名 点击查询 应可以看到填写到值中的内容

示例


设置火狐浏览器

开启 DoH 功能

目前(v141)要让火狐浏览器使用HTTPS记录
需要启用内置的 DoH DNS 功能

打开 设置》隐私与安全》基于HTTPS的DNS启用策略
将安全等级设置到 增强保护或更高 不然火狐基本不会使用 DoH 查询功能

默认使用 cloudflare 的DoH 其在国内的连接效果可能不佳
可以更换成国内的 DoH 服务

# 360
https://doh.360.cn/dns-query	# 阿里
https://dns.alidns.com/dns-query# 腾讯
https://doh.pub/dns-query

示例

测试 DoH 查询工作状况

DoH 查询的工作状态不太好直接观察 这里使用间接测试方法
通过 运行 ECH 测试的方法来进行间接 测试

ECH (Encrypted Client Hello) 加密客户端
其用于加密TLS握手消息 此处不做过多介绍

其在火狐 v119 版本后就默认开启了
也需要依赖DoH功能 若ECH测试通过则表明 DoH也已经启用

ECH 测试网站:

  • https://tls-ech.dev/
  • https://www.cloudflare.com/zh-cn/ssl/encrypted-sni/

通过上述设置后 应该可以通过ECH测试

(其实在F12里面看DNS解析这一项就行了)

火狐浏览器代理问题

若在没有使用代理则此部分可忽略

在火狐中 使用系统代理 的情况下 似乎无法使用DoH查询 这可能和UDP有关
Windows的系统代理设置 可能相当于一个socks4代理 其是不支持UDP的

选择 手动配置代理 使用socks5代理 可以解决此问题
socks5 协议支持UDP 当然上游服务器也需要支持UDP
但是不要勾选 使用代理查询DNS

这同样会造成DOH失效 具体原因尚不明确
可能是火狐自身的一些特性造成的


测试访问效果

在完成HTTPS记录的添加和火狐浏览器设置后
开始测试访问效果

若按照之前的教程设置了lucky反向代理或重定向固定端口
则需要新的域名 添加到web服务规则中的 前端地址
这里为了方便演示 使用了单域名 并设置了独立的web服务规则

附加端口访问

输入域名并附加端口进行访问
此步骤用于验证 web服务本身是否可用
以防止 如端口未打开 域名输入错误等其他原因影响访问

删除端口后访问

在附加端口访问成功后 即可尝试删除端口访问
若上述设置均正确 则删除端口后依然可以访问

更新HTTPS记录

使用lucky更新 HTTPS 记录的方法和之前更新SRV记录时基本相同
依然可以使用全局变量来动态引用STUN穿透后获得的端口

第一项为 优先级 这里填写的是1
第二项为 目标 因为是服务模式 指向的是自身 故填写的是一个点
之后便是 的内容 与之前在cf控制台中填写的保持一致
此处还使用了动态的stun全局变量替换静态的具体值


故障排除

目前让Firefox使用 HTTPS记录 的条件:

  • 更新火狐浏览器到最新版本
  • 启用火狐内置的DoH查询 并保证其可以工作
  • 火狐浏览器中未设置使用系统代理
    或设置手动socks5代理 但未勾选使用代理查询DNS
  • 所访问的域名在其443端口上没有任何服务
    若在443端口上已有服务 则会直接显示443端口上的服务

火狐安卓版配置

目前火狐的安卓版本也已经可以使用HTTPS记录
与Windows上不同的是 目前安卓版本的火狐内置的DoH查询功能
好在其可以使用系统设置中的DoH 设置系统DoH后即可使用HTTPS记录

不同品牌的设备 对其的称呼也不同
如 加密DNS、安全DNS、私人/私有DNS
可以直接在系统设置中使用 DNS 为关键字 进行搜索

示例


参考:

  • https://blog.xavierskip.com/2023-07-06-dns-svcb-https/
  • https://66666.host/dns-https-hide-port/
  • https://blog.kaciras.com/article/42/speedup-your-site-with-http3-using-nginx-and-dns-svcb
  • https://tao.zz.ac/dns/dns-svcb-https.html
  • https://r2wind.cn/articles/20221111.html
  • https://hostloc.com/thread-1139573-1-1.html
  • https://blog.nkxingxh.top/archives/293/
  • https://docs.dnspod.cn/dns/help-redirect-url/
  • https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/iframe
  • https://wzh.me/Technology/Network/DNS-HTTPS-Record/
  • https://support.dnspod.cn/dns/help-svcb/
  • https://serverfault.com/questions/1151933/how-does-a-web-browser-use-a-https-or-svcb-dns-resource-record-rr

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

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

相关文章

深圳市网站开发茂名手机网站制作

/* * 关于equals()和: 对于String简单来说就是比较两字符串的Unicode序列是否相当,如果相等返回true; * 而是比较两字符串的地址是否相同,也就是是否是同一个字符串的引用。 * * 为了高效的修改字符串Java引入了StringBuffer。 */public class test { p…

做网站哪个软件好东莞横沥医院

在当今数字化浪潮的推动下,企业的数字化转型已成为企业竞争力的关键因素。而在众多企业应用软件中,SAP(系统应用和产品)作为全球的企业资源规划(ERP)解决方案供应商,扮演着至关重要的角色。然而…

OI 笑传 #15

karawaredoki0 T1 rz题。 1题目背景 弗洛吉有一棵 \(n\) 个顶点的无根树,每个顶点 \(i\) 的初始权重为 \(i\)。他最多执行一次操作,一次操作是选择一条路径上的顶点序列 \(x_1,x_2,\cdots,x_k\),从集合 \(x_1,x_2,\…

物流网站前端模板下载外贸 网站 建设 制作 成都

净初级生产力(NPP)是指植物在单位时间单位面积上由光合作用产生的有机物质总量中扣除自养呼吸后的剩余部分,是生产者能用于生长、发育和繁殖的能量值,反映了植物固定和转化光合产物的效率,也是生态系统中其他生物成员生存和繁衍的物质基础。其…

广州建设厅官方网站小程序怎么开发自己的微信小程序

xxxx 不在 sudoers 文件中。此事将被报告。 在Ubuntu中,可以通过将用户添加到sudo组来为其提供sudo(超级用户)权限。 要添加sudo权限,按照以下步骤操作: 打开终端(CtrlAltT)。 输入以下命令并…

互联网制作网站网络系统搭建

语义化是指根据内容的结构化(内容语义化),选择合适的标签(代码语义化)。通俗来讲就是用正确的标签做正确的事情。 语义化的优点如下: 对机器友好,带有语义的文字表现力丰富,更适合…

怎么做公司的中英文网站网站建设 顺德

1、进程 1.1什么是进程&#xff1a;进行中的程序&#xff08;正在运行中的程序&#xff09;-process过程 程序的一次执行过程 - 进程 hello.c -- 程序源代码 a.out -- 可执行程序 1.2程序和进程的关系&#xff1a; 程序<------>进程 1.3进程怎么来的&#xff1a; 程…

网站开发需求分析报告wordpress图片排列显示

抖音服务器升级中&#xff0c;暂不支持本地区开播抖音怎么在法国直播&#xff1f;除了餐饮&#xff0c;腾讯自主研发的各种跨界开发节目也无人问津。至于年初腾讯app项目和资源&#xff0c;还没有整体发布&#xff0c;不过&#xff0c;神似的行业信息也有公布。这其中对爆红的博…

【题目合集】一元二次方程 | 换元思想

【题目合集】一元二次方程 | 换元思想 1.(2025中山市校级开学) 如果关于 \(x\) 的一元二次方程 \(ax^2 + bx + c = 0\) 有两个实数根,且其中一个根为另外一个根的 \(2\) 倍,则称这样的方程为“倍根方程”,请判断以…

GeekDoc 中文系列教程 2025.10

财富十倍比两倍更容易(双语) CEO 修炼手册 生活黑客 原则 中文版 RichAF 中文版 油管公式Quant金融机器学习的进展 自动交易员指南 算法交易系统构建指南 大数据、机器学习与量化投资 算法交易入门 Quantinsti 博客…

南昌做网站kaiu网站设计 字体

1、抓包过滤器语法和实例 抓包过滤器类型Type&#xff08;host、net、port&#xff09;、方向Dir&#xff08;src、dst&#xff09;、协议Proto&#xff08;ether、ip、tcp、udp、http、icmp、ftp等&#xff09;、逻辑运算符&#xff08;&& 与、|| 或、&#xff01;非&…

黑色背景的网站开发工具医院建筑工程网

首先javascript是一种具有面向对象能力的&#xff0c;解释型程序设计语言。 js对大小写敏感&#xff0c;一定要采取一致的字符大小写形式&#xff0c;在js中的结束分号&#xff08;&#xff1b;&#xff09;是可选的&#xff0c;为了避免JS语句错误&#xff0c;我们还是要注意添…

贪心算法 | 每周8题(一) - 指南

贪心算法 | 每周8题(一) - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&q…

佛山网站建设有限公司开发一款app需要哪些技术

除了我们常见的家庭、社区、园区等智能监控&#xff0c;出租房作为很多人的暂住所也极易发生盗窃等事件&#xff0c;为保障大众租户的财产安全&#xff0c;旭帆科技特地针对出租屋制定了智能监控系统方案。 1、安装智能安防摄像头 高清晰度、夜视功能良好的智能摄像头&#xf…

企业网站建设一般要素包括哪些中国四大saas公司

1.涉及领域和课程&#xff1a; 信号与系统现代自动化原理与应用频谱转换及振动分析材料学基础与应力分析数学建模、仿真与求解工程数学传感器机器学习与模式识别随机信号处理反馈系统文献学DSP应用机器视觉凸优化&#xff0c;数学物理方法 2.教材推荐 豆瓣书单&#xff0c;更…

如何设计出优秀、健壮且易于维护的API——关于HTTP状态码与业务逻辑状态码的处理 - 浪矢

目录反例正确的处理方法第1步:在业务逻辑层定义并抛出“业务异常”第2步:在最外层创建“全局异常处理器”最佳实践 反例 刚开始学习后端开发时做了一个文件管理系统,其中有一个文件删除的API。 文件和目录删除操作 …

Hexo搭建/部署个人博客教程 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

科技公司网站php源码游戏建模培训

持续创作文章&#xff0c;只是为了更好的思考 这里不多介绍了&#xff0c;我放一张图大家就明白是什么接口了。这里只介绍整体加密逻辑&#xff0c;有些细的地方大家自行调整。 本次逆向的网址是 aHR0cHM6Ly90cGFzcy5qaWxpbi5jaGluYXRheC5nb3YuY246ODQ0My8jL2xvZ2luP3JlZGly…

微信网站开发人力资源做网站的好处

今天继续和大家一起来学习初中数学&#xff0c;初一的相关知识&#xff0c;在前面已经介绍了正数和负数&#xff0c;对于有理数也有了清楚的认识&#xff0c;今天我们来学习相反数&#xff0c;相反数的概念和表示是中考命题的热点之一&#xff0c;经常结合其他知识点一起考察&a…