Administrator
发布于 2025-12-27 / 2 阅读
0
0

10.【建站Plus进阶】用IPV6+Cloudflare修改Origin Rules+Openresty反向代理+DDNS-go访问自建服务(不带端口号)

第一步:确认 DNS 解析(Cloudflare)

确保代理服务仅DNS(仅仅做DNS解析,不做相关的加密和SSL和orign rules的重定向等操作), ==确保IPV6地址能直接访问服务后,再开启黄色代理(折腾其他端口重定向等高阶功能)==

经添加了名为 \* 的 AAAA 记录(泛解析),如果没有 \*,你需要点击 Add record:

- Name :填 泛解析 “*” , (代表任何名字都行,解析到我的虚拟机IPV6地址后,主要靠Openresty的反向代理指向对应的服务 )

- Content 内容:随便填写要给IPV6地址就行: 2001:db8:85a3:0:0:8a2e:370:7334 ==(随后主要依靠DDNS-go来更新IPV6地址)

注意:为了后续申请证书顺利,建议先把这个记录的“小橙云”关掉(仅 DNS),等证书下发并配置好后再打开。


2. 在1Panel面板上安装OpenResty和DDNS-go

申请 SSL 证书(在 1Panel 中)

要在 1Panel 里实现 HTTPS,最好的办法是利用 Cloudflare 的 API 自动申请和续期证书。

1. 获取 Cloudflare API Token

- 去 Cloudflare 点击右上角头像 -> My Profile -> API Tokens。

- 创建一个 Token,模板选择 "Edit zone DNS"

- 记下这个 Token。

2. 在 1Panel 添加 DNS 账户

- 回到 1Panel,点击左侧菜单 证书 -> DNS 账户 -> 创建

- 类型 :选择 Cloudflare。

- Token :粘贴刚才获取的 API Token。

- 邮箱 :填你的 Cloudflare 账号邮箱。

1. 申请ACME账户(证书申请账户)

1. 申请证书

- 点击 证书 -> 申请证书

- 主域名 :输入 seguzhixue.top(举例)

- 验证方式 :选择 DNS 验证 (因为这是内网穿透/家庭宽带环境最稳定的方式)。

- DNS 账户 :选择刚才创建的 Cloudflare 账户。

- 点击确认,等待几分钟,证书就会显示“已签发”。

注意:如果你想www.seguzhixue.top和 seguzhixue.top,同时指向同一个服务,这里的证书申请的地方就要填两个域名,相当于一个证书验证两个域名(一个一级域名,一个二级域名)。

第三步:创建反向代理网站(核心步骤)

现在我们把域名和你的内网 IP 192.168.5.178:8081 关联起来。

1. 点击左侧菜单 网站

2. 点击蓝色按钮 创建

3. 在弹出的窗口中,选择 "反向代理" (注意:不要选默认的"运行环境")。

4. 按照下图填写配置:

- 主域名 :填 seguzhixue.top:666,可选填写多个域名 blog.seguzhixue.top:666

- 代理地址 http://192.168.5.178:8081 (注意这里选 http,因为你内网传输不需要加密)。

- HTTPS勾选开启

- 在下方的证书选择框中,选择你刚才在第二步申请到的 seguzhixue.top 证书(或者一证书多域名)。

- 勾选 "HTTP 跳转 HTTPS" (推荐),h

5. 点击 确认


## 注意:cloudflare很重要的小知识:

如果你想在后期设置域名解析 Origin rules的时候,seguzhixue.top(跳转)

对于“入口”(用户访问端),不能随便填,必须使用 Cloudflare 指定的端口。

当你开启了“小黄云”(代理模式)后,Cloudflare 就像是一个只开了特定几个窗口的售票大厅。如果你去敲其他没有开放的窗口(比如端口 666),它是不会理你的。

以下是 Cloudflare 免费版/Pro版 仅支持的端口列表:

1. Cloudflare 允许的 HTTP 端口(不加密)

如果你的访问是 http:// 开头的,CF 只监听以下端口:

- 80 (默认标准端口)

- 8080

- 8880

- 2052

- 2082

- 2086

- 2095

2. Cloudflare 允许的 HTTPS 端口(加密,带锁)

如果你的访问是 https:// 开头的(你现在用的就是这个),CF 只监听以下端口:

- 443 (默认标准端口)

- 2053

- 2083

- 2087

- 2096

- 8443


3. 这里的“端口”指的是哪一端的?(核心概念)

要理解为什么你之前手机访问 blog. seguzhixue.to:666 失败,必须区分 两端

A. 客户端 -> Cloudflare (入口,Edge)

- **限制:** 严格受限 。必须是上面列表里的端口。

- 你的情况: 当你手机访问 https://...top:666 时,因为 666 不在上面的 HTTPS 列表里 ,Cloudflare 直接拒绝连接。这就是为什么手机流量(走代理)打不开的原因 ==(必须关闭小黄人,直接dns解析IPV6地址就可以端口访问)==

B. Cloudflare -> 你的 NAS (源站,Origin)

- **限制:** 完全自由 。这里可以是 1 到 65535 之间的任何端口。

- 你的情况: 你的 NAS 运行在 666

- ==Origin Rules 的作用: 这个功能的伟大之处就在于,它充当了一个“转换器”。==

- 它允许用户访问 Cloudflare 的 443 (合法端口)。

- 然后 Cloudflare 在内部把流量转发给你的 666 (自定义端口)。

4. 总结与示意图

你可以把 Cloudflare 想象成一个 大楼保安

- 大楼大门 (Cloudflare 入口): 只开了 443号门80号门 。普通人(访客)只能从这几个门进。如果你去推 666号门 ,门是焊死的,进不去。

- 内部通道 (Origin Rules): 访客进了 443 号门后,保安(Cloudflare)会看访客名单,发现是找“seguzhixue”的,于是保安通过 内部专线 ,把访客带到了你办公室的 666号房间

结论:

- 对外(给别人发的链接): 永远不要带非标准端口,直接用 https://blog.seguzhixue.top (默认443)。

- 对内(你的极空间设置): 你可以随便填,666、8888、1234 都可以,只要在 Origin Rules 里告诉 Cloudflare 怎么转发就行。

下一步建议:

你现在已经掌握了最核心的用法。如果未来你有新的服务(比如 transmission 下载器),你可以复用这个模式:

1. DNS 添加 bt.seguzhixue.top -> 开启小黄云。

2. Origin Rules 添加规则:Hostname 等于 bt... -> 重写端口到 9091 (或其他下载端口)。

这样你所有的服务在外网访问时,看起来都像是标准的 443 端口,非常整洁!


提问:所以我用https://blog.seguzhixue.top:2053 是不是就能正常访问,然后再加上origin rules转发到我自定义的2053端口,然后1panel的证书和反向代理域名设置也弄成 blog.seguzhixue.top:2053,监听2053端口,最后blog.seguzhxiue.top带不带2053端口都能访问

1. 流量路径分析

你将后端统一为 2053 (Cloudflare 支持的 HTTPS 端口),并设置 Origin Rules 强制转发到 2053

情况 A:访客不输入端口 (默认 443)

- 用户输入: https://blog.seguzhixue.top

- 入口: 撞上 Cloudflare 的 443 端口(默认开放)。

- 处理: Cloudflare 查看 Origin Rules -> 规则说:“去源站的 2053 端口”。

- 出口: Cloudflare 连接你极空间的 2053 端口。

- 结果: ✅ 访问成功。

情况 B:访客手动输入端口 (:2053)

- 用户输入: https://blog.seguzhixue.top:2053

- 入口: 撞上 Cloudflare 的 2053 端口(这是 CF 允许的端口,所以门是开的)。

- 处理: Cloudflare 查看 Origin Rules -> 规则说:“去源站的 2053 端口”(虽然本来就是去 2053,但规则再确认一次也不冲突)。

- 出口: Cloudflare 连接你极空间的 2053 端口。

- 结果: ✅ 访问成功。


2. 实操配置清单 (如何落地)

既然你想这么玩,这里是具体的操作步骤,确保你每一个环节都扣上:

第一步:Cloudflare Origin Rules 设置

- 匹配规则: Hostname 等于 blog.seguzhixue.top

- 目标端口 (Destination Port): 重写到 2053

- (这样无论用户从哪个口进来,CF 都会去找你源站的 2053)

第二步:1Panel (极空间) 设置

- 反向代理/建站设置:

- 域名: blog.seguzhixue.top

- **监听端口:** 2053 (这里是关键,不能是默认的 80/443 了)

- ==SSL 证书: 必须配置好(因为 2053 是 HTTPS 端口,必须有证书,哪怕是自签名的)。==

第三步:防火墙/路由器设置

- 端口转发: 路由器上不需要专门做,因为你有 IPv6。

- 防火墙放行:

- 1Panel 的防火墙要放行 2053

- 极空间本身的防火墙(如果有)要放行 2053

- OpenWrt 路由器防火墙要允许 2053 的入站流量。


3. 这是一个好的方案吗?

优点:

- 灵活性极高: 你给用户留了两个入口。如果某些极端的公司网络封了 443(虽然罕见),用户还能尝试 2053。

- 逻辑自洽: 前后端端口一致,对于强迫症来说看着很舒服。

唯一的“缺点” (微不足道):

- 你其实浪费了一个宝贵的“隐蔽端口”。

- 我们通常喜欢把后端设为 666 这种随意的端口,是为了防止扫描。如果你用 2053 ,因为它是 Cloudflare 的标准端口,可能会有专门针对 CF IP 段的扫描器来扫这个端口。

- 但是! 既然你有 Cloudflare 挡在前面,而且 Origin Rules 已经生效,这个问题其实可以忽略不计。

总结

尽管放心去弄! 你的思路非常清晰。把后端改为 2053,配合 Origin Rules,你将拥有一个既能通过标准 https:// 访问,也能通过 https://...:2053 访问的超强博客。

下一步: 现在就去 1Panel 改端口吧,改完记得去 Cloudflare 把 Origin Rules 的目标端口也改成 2053,然后见证奇迹。


评论