本文作者:zhujue

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C

zhujue 2024-07-05 11:31:47 255 抢沙发
不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C摘要: ...


Lucky-(反代、端口转发、自动证书利器)系列集锦


上面是lucky系列集锦,下面是本文正文。


不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第1张

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』

2023-11-17 16:47:13

我在上篇NAS的反向代理教程中给大家分享了【NginxWebUI】这款工具:

NAS玩家的必备技能:小白也能轻松上手的反向代理并配置SSL证书

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第2张

🔺评论区有一位小伙伴随口说的另外一款叫做【Lucky】的工具我还是第一次听说。鉴于我的好奇心我也是在NAS中搭建体验了一下,没想到这款工具比我想象中的更强大,更易上手。

所以,这么好的神器不敢独自分享,特地来分享给大家!

关于Lucky

我原来以为评论区的小伙伴说出Lucky的时候,我只是单纯的觉得它可能也只是一个单纯的反代工具,搭建之前我其实并没有对它抱有很大的希望,毕竟这类很多工具都是免费开源的,有些编程基础的其实都可以借鉴源码编译出另外一个自己的版本。

不过等我体验之后,才发现它的功能非常丰富,并且因为是国人开发,操作逻辑和易用性也更符合我们国人的使用习惯。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第3张

🔺该工具的作者为@gdy666,再此再次对互联网所有的无私奉献者表示感谢!!!

至于该工具的作用,我直接引用作者自己的介绍:

1.替代socat,主要用于公网IPv6 tcp/udp转 内网ipv4

  • 支持界面化(web后台)管理转发规则,单条转发规则支持设置多个转发端口,一键开关指定转发规则

  • 单条规则支持黑白名单安全模式切换,白名单模式可以让没有安全验证的内网服务端口稍微安全一丢丢暴露到公网

  • Web后台支持查看最新100条日志

  • 另有精简版不带后台,支持命令行快捷设置转发规则,有利于空间有限的嵌入式设备运行.(不再提供编译版本,如有需求可以自己编译)

2.动态域名服务

  • 在ddns-go的基础上主要改进/增加的功能有

    • 1.同时支持接入多个不同的DNS服务商

    • 2.支持http/https/socks5代理设置

    • 3.自定义(Callback)和Webhook支持自定义headers

    • 4.支持BasicAuth

    • 5.DDNS任务列表即可了解全部信息(包含错误信息),无需单独查看日志.

    • 6.调用DNS服务商接口更新域名信息前可以先通过DNS解析域名比较IP,减少对服务商接口调用.

    • 其它细节功能自己慢慢发现...

    • 没有文档,后台各处的提示信息已经足够多.

    • 支持的DNS服务商和DDNS-GO一样,有Alidns(阿里云),百度云,Cloudflare,Dnspod(腾讯云),华为云.自定义(Callback)内置有每步,No-IP,Dynv6,Dynu模版,一键填充,仅需修改相应用户密码或者token即可快速接入.

看了介绍之后,我原本以为NAS有了ddns-go就天下无阻了,没想到Lucky比它更猛!

到底怎么样,盘起来再说吧!

Lucky的安装和部署

👉安装前的准备

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第4张

🔺打开NAS的文件管理器,在 docker 文件夹中(威联通默认为Container文件夹),创建一个新文件夹【goodluck】,用于存放它的相关数据。

👉正式安装和部署

今天使用的安装方式为SSH终端部署,演示的NAS为威联通。至于SSH工具请自行解决,Putty,XShell,FinalShell等都可以,我个人使用的是FinalShell。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第5张

🔺使用SSH终端工具连接到NAS之后先改用管理员模式登录,输入命令“ sudo -i ”回车,提示输入密码,密码就是我们NAS的登录密码,输入的时候不会有显示,输入完成后直接点回车即可。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第6张不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第7张

🔺然后还需要在出现上图界面的时候输入“Q”和“Y”(群晖和华硕NAS没有这步操作)。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第8张

🔺接着输入Docker run命令:

docker run -d --name lucky --restart always --net=host -p 16601:16601 -v /docker/goodluck:/goodluck gdy666/lucky

以上命令需要改动的为:

  • -p 16601:16601:冒号前面改为本地没被占用的端口;

  • -v /docker/goodluck:/goodluck:冒号前面对应我们前面新建“goodluck”文件夹的本地实际路径

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第9张

🔺如果没有问题在NAS的Docker容器列表中就能看到lucky容器已经正在运行了,说明部署成功。

Lucky的使用体验

直接在浏览器中输入 http:// NAS的局域网IP:端口号 就能看到OneNav的登录界面了。

第一步:设置账号和密码

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第10张

🔺默认的账号和密码均为“666”,先“登录”进去。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第11张

🔺主界面确实做的挺简洁的,还有帮助说明。并且功能也远远比我想象的更要多,并且几乎都是我们在折腾NAS的时候需要的,比如除了今天要说的DDNS与反向代理,还有端口转发,内网穿透,网络唤醒等多个功能。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第12张

🔺为了安全起见,我们进入容器的第一步就是在“设置”中更改默认的账号和密码。

第二步:设置DDNS(动态域名解析)

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第13张

🔺在左侧点击“动态域名”,选择“添加DDNS任务”。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第14张

🔺这里默认你已经有了自己的域名,以下信息是你需要填写的:

  • DDNS任务名称:自己随意填

  • DNS服务商:选择自己域名的服务商,我这里是腾讯云,如果你是阿里云就选择阿里的

  • Token:这个就填入自己在域名服务商那里获取到的数据,不知道的可以去下面文章里学习下~

  • 公网IP类型:有IPv4的当然选IPv4,没有的选IPv6

  • 域名列表:需要填两行,第一行是主域名,第二行是泛域名,也就是在前面加上“ *. ”即可。

其它的直接保持默认即可,最后点“添加”。

关于域名获取相关Token数据,教程在这里:

一文搞定威联通NAS最全外网访问教程,有无公网IP皆可,总有一种方案适用于你

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第15张

🔺返回到页面之后,在“任务列表”这里看到“同步结果”显示为“成功”,就说明我们前面的设置没有问题。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第16张

🔺这个时候我们就能用自己的这个域名远程访问自己的NAS了!不过这里显示的是“不安全”,其实是我们还没建立更安全的HTTPS连接,也就是没有部署SSL证书。

其实到这里,我们就已经实现了DDNS-GO容器的效果了,并且通过这次体验,有一说一,我个人觉得它的体验确实好过DDNS-GO。

第三步:部署SSL证书

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第17张

🔺点击左侧的“安全管理”,选择“SSL证书添加”。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第18张

🔺以下信息是你需要填写的:

  • 备注:随意填一个

  • 添加方式:选择“ACME”

  • 证书颁发机构:选择“Let's Encrypt”,选择它的目的是因为虽说它的SSL证书有效期仅为三个月,但是Lucky会一直自动帮我们续签,这个够意思吧!

  • DNS服务商:和前面一样,选择自己域名的服务商

  • API秘钥:这里人家提示的很清楚,是腾讯云API秘钥,而不是前面的Token

  • 域名列表:和前面一样,需要填两行,第一行是主域名,第二行是泛域名

  • 勾选:“DNS查询强制IPv4”和“DNS查询仅使用TCP通道”

其它的直接保持默认即可,最后点“添加”。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第19张

🔺证书的申请可能需要等一会,一般在一分钟到三分钟之间。我们可以点开“日志”看它申请的过程,当出现“证书申请成功”和“已保存到配置” 的显示的时候,就说明证书部署成功。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第20张

🔺部署成功的证书会显示ACME信息,以及颁发时间和到期时间。

第四步:设置安全的反向代理

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第21张

🔺反代就比较简单了,选择左侧的“Web服务”,点击“添加Web服务规则”。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第22张

🔺以下信息是你需要填写的:

  • Web服务规则名称:随意填

  • 监听类型:同理,有IPv4的当然选IPv4,没有的选IPv6(其实两个都选也没问题)

  • 监听端口:自己随意改,只要本地端口没被占用即可

  • TLS:因为我们前面设置好了SSL,为了安全的反向代理,这里必须启用

其它的直接保持默认即可,接着点“添加Web服务子规则”。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第23张

🔺其实这个子规则就是我们外网访问NAS的某项服务时,我们需要隐藏的这个服务。需要填写的信息为:

  • Web服务子规则名称:随意填

  • Web服务类型:当然是“反向代理”了

  • 前端域名/地址:填写从外网访问该服务的二级域名,简单来说就是在我们前面填写的自己域名前面随意添加一个自己能记下来的前缀即可

  • 后端地址:这个就必须是NAS中该服务的局域网页面地址了,一般就是“内网IP+端口号”组成,直接在页面的地址栏复制粘贴过来即可。注意,前面是有“http://”的。

  • BasicAuth认证:这个和NginxWebUI那个加密功能是一样的,就是我们外网访问的时候需要先输入账号和密码才能打开,相当于在安全上又多了一层屏障,看个人需求吧~

如果这个时候你只需要这一个反向代理服务,这个时候你就可以直接点击右下角的“添加”按钮即可。如果你有其它服务需要反向代理,则需要直接点击“添加Web服务子规则”继续。

我这里顺便也演示一遍吧。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第24张

🔺比如说我这里添加了第二个需要反代的服务,其实操作和前面的一模一样,需要更改的只是前端域名的前缀即可,只要和前面的不冲突随意改。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第25张

🔺设置好之后再“服务列表”就能看到我们前面设置好的规则。反代之后的好处就是我们以后访问家里NAS中的所有服务都不需要记端口号了(因为端口号都是一样的,或者说有那位老6测试80和443端口可以使用,端口号就不用记了,直接使用域名访问),我们只需要记下域名的前缀即可(前缀我们尽量设置简单点,并且和对应的服务有关联性)。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第26张

🔺最后别忘了在路由器将反代的端口号做一个端口转发。

不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C 群晖 反向代理 端口转发 第27张

🔺看下效果:已经可以HTTPS外网访问,并且前面也正常显示安全小锁,此次折腾成功!

通过前面的折腾可以看出,Lucky这款工具确实不错!可以说是它集中了NAS中两大神器:DDNS神器【DDNS-GO】和反向代理神器【Nginx Proxy Manager】,并且在使用体验上也是有所优化。可能是我折腾太多有了一些经验,我个人完成今天教程所有的操作真的还没用到10分钟,真的是快捷又方便!


评论区问答收集如下。

问:想请教一下Lucky的作者,我这里一直获取不到IPV6的地址,这个怎么破?,通过接口,查询不到ipv6地址,通过网卡,查询不到我群辉的网卡(下拉列表里面是空的),通过命令查询,直接提示“执行指令出错: runcommand error:fork/ 去看看: no such file or directory”,反正就是获取不到ipv6地址

答:尽量使用接口方式获取,没提供日志无法分析故障原因

问二:大佬说的不用输入端口号,是不是还是得输入端口号,只是之前不同的应用使用不同的端口号,现在所有的应用都是一个端口号,只是原来通过端口号来区分,现在通过域名来区分了?

答:是的,比如之前记得5000群晖端口,现在二级域名:nas.***123.com
再比如,下载bt,之前是5123端口,现在是bt.***123.com
再比如,自己的导航页是1234端口,现在是daohangye.***123.com
这样更容易记住,而且只开放少量端口,而且学懂反向代理和正向代理的区别

问三:我现在就是一个功能转发一个端口 太多了,咋实现子域名 直接访问?这个教程有点太难了。实现你说这个 有没有比较简单单一功能的?

答:这点我一开始也不会,但是呢,你去b站搜索那个反向代理,然后up主是:账户未命名。
先去理解,反向代理内容,域名解析,泛域名解析等于二级域名解析。

问四:请问下,实现这个效果需要在腾讯云解析dns的时候,主机记录那里要写*吗(泛解析)?我之前解析的时候,主机记录写了nas,连起来就是nas.****.com,这时候还能反向代理吗,使用三级域名吗?

答:原来的nas.****.com解析记录删掉,添加泛解析*.****.com,反向代理配置填写nas.****.com专门用来指向nas,三级域名和二级域名泛解析不冲突,还可以继续用

问五:有几个问题不明白,请教下:
1、已经在腾讯云申请了证书了,是不是这个已经申请的证书就可以不用管了,直接用lucky重新申请证书就可以?
2、QNAP里的"SSL证书和私钥"里的证书,原来导入的是腾讯云申请的证书,是不是也需要重新导入lucky申请的证书?
3、类似的,QNAP上装的vaultWarden之类的SSL证书,是不是也需要替换成lucky申请的证书?
谢谢

答:三个答案都是“是”。基本上你这几个问题都是肯定回答。其实证书本质上就是一一对应,所以你使用的服务用的那个域名就申请该域名的证书即可。

文章投稿或转载声明

来源:不止是反向代理!3分钟在NAS上搭建国内大佬开发的免费开源神器『Lucky』-Stark-C版权归原作者所有,转载请保留出处。本站文章发布于 2024-07-05 11:31:47
温馨提示:文章内容系作者个人观点,不代表天云博客对其观点赞同或支持。

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享

发表评论

快捷回复:

评论列表 (暂无评论,255人围观)参与讨论

还没有评论,来说两句吧...