季春二九 - https
type: channel
link: https://blog.jichun29.cn/tag/https/
items: lucky实现动态DDNS域名解析 + https安全访问教程

lucky实现动态DDNS域名解析 + https安全访问教程
type: item
date: 2025-01-09T18:42:00+08:00
description: 一、前期准备要实现动态DDNS域名解析和https安全访问，首先得有个域名。域名可以直接在阿里云或者腾讯云购买。我的域名是在腾讯云买的，然后托管到了cloudflare这个平台，为什么要托管到它那儿？因为托管过去后，就算没有ipv4的情况下，也能利用STUN穿透，获取到可以访问的ipv4公网IP和端口，只是这个IP和端口不是固定的，但可以用脚本去监控，要是有变更的话，能直接同步到cloudflare，还能收到邮件通知二、具体操作步骤（一）域名托管到cloudflare我是在腾讯云买的域名嘛，那在使用cloudflare之前，首先得把域名托管过去。注册账号：使用cloudflare得先注册个账号，这注册账号的过程我就不多详细说了，它的网站支持简体中文，按照说明去注册的话，应该都能顺利完成。选择套餐并激活：注册好后选择免费套餐就行啥都不用管，接着就去激活。修改DNS地址：然后去腾讯云把DNS地址修改成cloudflare提供的在“修改DNS服务器”那个界面里，把名称服务器修改好就行之后就等着cloudflare同步DNS完成，大概等个几分钟就好了，等完成后就能看到相应的状态获取令牌：要获取令牌，点击右上角，再点击我的个人资料接着使用编辑区域DNS模板模板权限默认就行，区域资源选择包括、特定区域，再选好自己的域名，点击继续然后创建令牌可千万要记住保存好这个令牌。（二）安装lucky要是用飞牛的话，直接在应用中心下载就行要是没有飞牛，可以用docker安装，要是fnOS系统的nas，也有使用Docker安装Lucky的详细教程。（三）设置动态域名（DDNS）在左边找到“动态域名”这个选项卡，然后点击“添加任务”。在编辑DDNS任务的时候：设置任务相关信息：设置好任务名称，使用简易模式，托管服务商就根据自己域名托管的实际情况来选，像我域名托管在cloudflare，我就选它，然后把之前获取的令牌填进去。选择类型及域名解析：类型的话，我只有ipv6，就单选ipv6就行，域名列表这里，解析泛解析*.ceshi.com（要把这个换成自己的域名）。查看结果：完成添加后，要是看到同步结果显示“托管商记录一致”，那就说明DDNS设置成功。（四）申请SSL证书在安全管理那里选择“添加证书”（最新版lucky直接在菜单栏显示SSL/TLS证书）填写证书相关信息：添加证书的时候，备注可以随意写，添加方式选择ACME验证方式，这个也要根据自己域名托管的地方来选，像我托管在cloudflare，我就选它，再把令牌填进去，域名列表填泛解析域名*.ceshi.com（记得换成自己的域名），电子邮箱可以换成自己的（其实换不换都行，主要就是通知你申请好了），其他的都默认就行。等待结果：完成创建后，要是你有ipv4公网，使用ipv4通道申请证书和DNS查询的时候把强制ipv4打钩然后耐心等几分钟，可以试着刷新页面，看到相应结果就说明没问题。（五）反向代理及HTTPS访问在左边菜单栏选择“Web服务”菜单，点击“添加Web规则”。添加web服务规则：规则基本设置：添加web服务规则的时候，名称可以随意写，操作模式选简易模式，监听类型我因为是ipv6，所以选的是tcp6，监听端口默认是16666（大家也可以换成自己喜欢的，只要没被占用就行，后期访问就是用域名和这个端口），防火墙要开启，TLS也得开启（因为https访问必须开启这个）。添加子规则：接着添加web服务子规则，子规则名称也随意写，web服务类型选反向代理，前端域名/地址写自己需要的前缀二级域名，后端地址写内网IP和项目端口就行。继续添加规则（如有需要）：要是还有其他项目，就按照这个方式继续添加web服务子规则就行，添加完了点击右下角完成添加web服务规则就行，我自己就添加了三个，要是还有别的项目点击添加子规则接着弄就行。（六）设置重定向要是不设置重定向，有些浏览器只输入网址，不输入前面的https的话可能就进不去，像苹果自带的浏览器就是这样，所以得设置重定向，把所有域名都转到https。添加重定向规则：还是添加web服务规则，名称随意写，操作模式改成定制模式，监听端口和前面设置的保持一致就行，默认子规则里web服务类型选择重定向，默认目标地址写成https://{host}:16666（端口根据自己之前设置的修改）完成设置：保存完成就好，这样不管在哪里访问，所有二级域名就都会自动转跳到前面带https的网址。（七）端口转发还得把反向代理的端口通过路由器映射出去，这样才能正常从外网访问。就只需要映射一个端口就行，像我这里就是16666，以小米路由器为例，端口比如我的16666，访问的时候就是对应项目的二级域名:16666，就能实现访问，就是一个项目对应一个二级域名，记好域名和一个端口就行，像我之前设置的fn.ce…