本人域名在阿里云购买,所以以下都是以阿里云为例,其他云商类似
网站-证书-dns 账户-创建
如果已经有了这两个 key,请直接填写,名称随意。
access 和 secret key 到申请,直达;key 的申请步骤本文不做详细展开。
账户权限记得只勾选 dns 权限,避免第三方软件权限过多。
当我们拿到阿里云的 access 和 secret key 后,可以使用fnos 的 ddns 功能。
在 web 系统中 设置-远程访问-ddns-新增
填写 阿里云的 key 后可以点击测试,成功后即可确认保存;如果你有公网 ipv4 可以选择指定的网口,ipv6请选择公网 ipv6 的网口(官方对私有 ipv6 做了过滤,不要做过滤规则)。
完成后阿里云的 dns 解析,会创建一条 AAAA 的记录,阿里云工作台-云解析DNS-域名解析-选择指定域名-解析设置,就会看到这条记录了,如果没有记录可以手动创建一条 AAAA 记录
网站-证书-acme 账户-创建
填写邮箱即可
确认,等待日志申请成功。
应用商店-搜索 OpenResty 安装,如果你区域的 ipv6 80 和 443 端口没有封禁,可以http 填写 80,https 443。封禁的,跟我一样随意发挥吧。
随意创建一个分组,我是以设备分组的
下面就开始创建反向代理了;比如内网里有一个 openwrt 的软路由服务,想要以 81 端口对外访问,并且是 https 协议。
创建网站-反向代理
进入 配置-https 开启 选择证书 保存
该软件有一些小 bug,配置文件会将 OpenResty 安装时的端口号配置,而不是我们自己定义的端口(81),需要手动修改一下配置文件
保存并重载,即可访问了。
需要注意,这里对外暴露的 81 端口是 1panel 的端口,反向代理时使用的端口不要被其他服务占用。
反向代理是可以使用不同域名同端口访问内网的不同服务的,避免端口过多无法记住。
使用端口复用时,第一条记录的 https 一定要关闭或者证书需要填写其他域名;原因是第一条代理的服务 ssl 证书没有包含当前的域名会导致无法添加。
比如内网有第二个旁路路由设备n1 盒子,想要对外访问,n1 设备局域网访问地址为 http://192.168.119.2:80,对外访问地址为 https://n1.yuming.com:81。