使用 Cloudflare 自定义回源端口绕过备案阻断

0、前言

其实看我的集群监控面板就可以发现,我的服务器(尤其是高配置服务器)都在中国大陆,境外的服务器都是配置比较低的。我在服务器安全(二)内外网防御中也提到,用一台服务器做转发的方法。

这也是为什么我的服务器几乎没有被打宕机过:所有人能查到的 IP 只是转发的机器,把这台服务器打进黑洞我可以立刻切换到 Cloudflare 然后换一台继续转发,而且归功于服务 N+2 多机热备部署,所有服务只需在切换至 Cloudflare 后修改 DNS 记录即可完成;博客、CDN 等多点部署的服务,切换甚至可以由D监控全自动完成。

目前这个方案已经非常成熟,我已经在团队内部推广,但是是以这样的方式:

  1. 使用 Docker 运行容器
  2. 让成员使用容器
  3. 宿主机作为上文中提到的转发机

这样就有一个问题:需要同时在容器和宿主机中配置证书,不过容器中的证书不一定要有效,可以自签。最大的问题是,如果域名没有备案,会直接被备案阻断,使用 HTTP 会被重定向,开启了 HSTS 会直接被重置连接。使用 Nginx 反向代理时,不知道为什么可以直接使用 HTTPS/443 转发不会被阻断;使用 Cloudflare 回源时,访问了几次就报Error 525错误,无法完成连接。

所以,最佳方法就是自定义回源端口。

1、非标准端口 SSL

首先参考本站文章:

Nginx非标准端口或子域名开启SSL
https://blog.tsinbei.com/tw/archives/76/

以下以非标准端口8443为例。

2、自定义回源端口

在控制台中按以下步骤配置:

此处内容需要评论回复(自动审核)或加入 QQ 技术交流群(立即获得内容)后方可阅读。赞助(二维码在文章下方)后联系作者可一次性解锁所有(包括之后的新文章)。

编辑完成点击“部署”,刷新浏览器缓存即可生效。
需要添加域名时,再编辑此规则即可。

3、效果

清北俱乐部普通会员节点状态页面
路由:Cloudflare -> 宿主机端口转发 -> 宿主机 Nginx -> Docker 端口转发 -> 容器 Nginx
https://v1.tsinbei.cf
清北俱乐部高级会员节点状态页面
路由:Cloudflare -> 宿主机端口转发 -> 容器 Nginx
https://v2.tsinbei.cf

如果此页面运行正常,说明此方法目前依然生效。

4、注意事项

如果发现 HTTP 访问会被重定向到备案页面,HTTPS 访问正常,这是因为 Cloudflare 默认使用相同协议回源,在控制台开启强制 HTTPS 即可。

使用 Cloudflare 自定义回源端口绕过备案阻断

https://blog.tsinbei.com/tw/archives/1281/

文章作者
Hsukqi Lee
发布于

2023-06-06

修改于

2023-06-24

许可协议

CC BY-NC-ND 4.0

# 建站  SSL  TLS  HTTPS  网站  服务器  反向代理  DNS  Cloudflare  CDN

评论

昵称
邮箱
网址
22 条

TheHot

TheHot

来了来了

  回复

helpdesk

helpdesk

  回复