[Web] 使用 Lucky+Cloudflare 实现https+子域名访问

介绍一下我的使用条件:

Lucky: 使用Openwrt安装, 安装在主路由上 (安装位置随便)

域名: 在Domain.com购买, 托管到Cloudflare

IP: 动态的公网IP

安装Lucky

比较简单的方法, 可以使用Openwrt/docker安装. 如果使用的是Windows/WSL的docker, 记得注意自己的局域网IP, 保证Lucky服务可以访问到你的服务端的IP/端口. Luck的端口无所谓, 后面也基本用不到.

设置DDNS

打开Luck的webui, 点击动态域名-添加任务

选择Cloudflare, 点击创建令牌

他会自动跳转到以下的Cloudflare界面(如果你已经登录的情况下), 点击创建令牌

选择第一个 编辑区域 DNS , 选择 使用模板

选择你的域名, 其他地方不用修改, 直接继续

点击创建令牌

他会给出这个token, 点击copy复制下来

转到Lucky, 把token填进去, 域名列表填入你的域名和*.你的域名

看到公网IP说明DDNS就配置成功了

配置 Cloudflare 代理

找到Cloudflare的DNS记录

点击编辑, 把代理打开

配置好的效果

尝试去ping一下你的域名, 看到回复来自Cloudflare的IP就说明你的公网IP被隐藏了, 流量就会从Cloudflare走了(代价就是内网环境网速下降到公网环境的水平了, 建议仅用于博客/分享这种)

配置Https

转到Cloudflare, 选择SSL/TLS-概述

点击配置

选择到完全(严格)

选择SSL/TLS, 点击源服务器, 选择创建证书

全部默认即可, 点击创建

复制粘贴密钥和Key, 保存到本地为你的域名.pem和你的域名.key

转到Lucky, 点击 安全管理, 选择添加证书

把刚才的证书(PEM文件)和Key上传上去

看到时间解析正常说明证书添加正确

再次转到Cloudflare, 选择规则-Origin Rules, 点击创建规则

选择传入所有请求, 重写到... 这里端口随便填写, 但是想要直接访问的话就填443(https默认端口), 点击保存

配置子域名访问

再次转到Lucky, 转到web服务, 点击添加规则

填入443端口, 打开TLSHTTP3

添加子域名, 填入内网IP

ping 一下子域名, 可以看到已经可以正常访问


[Web] 使用 Lucky+Cloudflare 实现https+子域名访问
http://localhost:8090/archives/luckcloudflareddns
作者
Gzcheng
发布于
2024年09月25日
更新于
2024年10月27日
许可协议