简介

官网:https://lucky666.cn/

Lucky最初是作为一个小工具,由开发者为自己的个人使用而开发,用于替代socat,在小米路由AX6000官方系统上实现公网IPv6转内网IPv4的功能。Lucky的设计始终致力于让更多的Linux嵌入式设备运行,以实现或集成个人用户常用功能,降低用户的硬件和软件操作学习成本,同时引导使用者注意网络安全。随着版本更新和网友反馈,Lucky不断迭代改进,拥有更多功能和更好的性能,成为用户值得信赖的工具。

Lucky 的核心程序完全采用 Golang 实现,具有高效、稳定、跨平台等优点。其后台前端则采用 Vue3.2 技术进行开发,具有良好的用户体验和响应速度。此外,Lucky 的管理后台采用前后端分离的架构,第三方开发者也可以自由使用OpenToken轻松调用Lucky的各种功能接口。

功能模块

目前已经实现/集成的主要功能模块有

  • 端口转发

  • 动态域名(DDNS)

  • Web服务

  • Stun内网穿透

  • 网络唤醒

  • 计划任务

  • ACME自动证书

  • 网络存储


端口转发

  1. 主要用于实现公网 IPv6 转内网 IPv4 的 TCP/UDP 端口转发。

  2. 支持界面化的管理转发规则,用户可以通过 web 后台轻松地进行规则的添加、删除、修改等操作。

  3. 单条转发规则支持设置多个转发端口,这样可以实现多个内网服务端口的转发。

  4. 提供了一键开关和定时开关功能,用户可以根据自己的需求设置转发规则的开启和关闭时间,还可以使用计划任务模块进行定时开关。

  5. 单条规则支持黑白名单安全模式切换,用户可以根据需要选择使用白名单模式或黑名单模式。

  6. 白名单模式可以让没有安全验证的内网服务端口稍微安全一点暴露到公网,提高服务可用性。

  7. 实时记录最新的访问日志,方便用户了解转发情况。

  8. 规则列表日志一目了然,用户可以方便地追踪转发异常,及时进行排查和处理。

动态域名(DDNS)

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

  2. 支持全功能自定义回调(Callback),包括设置 BasicAuth,方便接入任意 DNS 服务商。

  3. Webhook 支持自定义 headers。

  4. 内置常用免费 DNS 服务商设置模板(每步、No-IP、Dynv6、Dynu),通过自定义回调进行快速接入,仅需修改相应用户密码或 token 即可一键填充。

  5. 支持 阿里云,百度云,华为云,京东云,腾讯云,火山引擎,帝恩爱斯-DNS.LA,Cloudflare,deSEC,DNSPod.CN,DNSPod.COM,Dynadot,Dynv6,Freemyip ,GoDaddy,Name.com,NameSilo,Porkbun,Vercel等服务商。

Web服务

  1. 支持反向代理、重定向和 URL 跳转。
  2. 支持 HTTP 基本认证。

  3. 支持 IP 黑白名单模式。

  4. 支持 UserAgent 黑白名单。

  5. 规则日志清晰易懂,便于追踪异常。

  6. 支持一键开关规则和定时开关规则。

Stun内网穿透

  1. 实现内网穿透,无需公网IPv4地址。

  2. 适合于国内运营商级NAT1宽带网络.

网络唤醒

  1. 支持远程控制唤醒和关机操作

  2. 支持接入第三方物联网平台(点灯科技 巴法云),可通过各大平台的语音助手控制设备唤醒和关机.

计划任务

  1. 不依赖 Linux 系统的 Cron,支持 Windows 系统。

  2. 操作简便,可视化编辑。

  3. 可操作控制 Lucky 框架内的其他模块开关。

ACME自动证书

  1. 支持 ACME 自动证书的申请和续签。

  2. 支持 阿里云,百度云,华为云,京东云,腾讯云,火山引擎,帝恩爱斯-DNS.LA,Cloudflare,deSEC,DNSPod.CN,DNSPod.COM,Dynadot,Dynv6,Freemyip ,GoDaddy,Name.com,NameSilo,Porkbun,Vercel等服务商.

网络存储

  1. 网络存储模块是一个应用范围广泛的模块,它提供了将本地存储、WebDAV和阿里云盘挂载到Lucky内部的各个文件类服务功能。

  2. 通过网络存储模块,你可以将添加的存储挂载到Web服务的文件服务、WebDAV、FTP和FileBrowser模块,实现更加便捷的文件管理和访问。

安装搭建

本次部署还是在飞牛nas的docker compose环境下

其他nas需对应修改映射目录部署


services:
  lucky:
   image: gdy666/lucky
   container_name: lucky
   volumes:
     - ./goodluck:/goodluck
   network_mode: host
   restart: always

登录nasip:16601,用户名密码都是666

lucky的功能都是一些网络进阶功能
反代、端口转发、网络唤醒、计划任务用的比较多
其他功能有需要的看看官方文档,因为我用的也少
1、端口转发:
比如lucky上配置端口转发7999端口到本地的8000飞牛端口

访问7999就访问到飞牛了,本地部署只是示例的作用,

lucky部署到云服务器上才能保护你nas的真实ip

2、web服务中的反向代理:
这里简单科普下,正向代理,反向代理,端口转发
正向代理:用户使用电脑通过代理服务器地址访问网站,用户需要知道网站网站
反向代理:用户使用电脑访问反向代理服务器地址,用户不需要知道网站地址,反向代理服务器上已经配置好了对应的反向代理地址和网站的对应关系
端口转发:用户使用转发代理服务器的A端口,转发代理服务器将A端口指向了实际要访问的网址的B端口。
反向代理只针对web服务,访问反向代理服务器的一个端口就可以访问多个网站,只是需要配置不同的二级域名或者网址;端口转发支持tcp/udp底层协议,端口需要一对一,你需要访问同一个域名的不同端口来达到访问不同服务的目的。

作者在文档里写到:

前端域名添加的就是你所需的域名,不要包含http://开头部分,直接填写域名即可。例如 123.abc.com虽然前端域名与路径这部分参数支持 123.abc.com/def 这种带路径的方式,但不建议用作反向代理,只建议做跳转或重定向使用

所以推荐使用aaa.abc.com这种二级域名作为反代,我实测局域网下192.168.1.112/feiniu反代了192.168.1.112:8000的飞牛登录界面会连接失败。直接使用192.168.1.112的前端地址反代192.168.1.112:8000,通过反代的1666端口,才访问成功,所以作者写那个不推荐用路径是有原因的。

3、网络唤醒

这个估计主要是针对具备网络唤醒功能的设备使用,我就不试了,我没什么需求,有需要的同学看看官方文档教程

通过绑定需要唤醒的网卡mac,对接点灯科技或者巴法云任意一个第三方平台,然后把天猫、小爱音箱等智能音箱绑定点灯科技或者巴法云,就能实现语音唤醒网络设备

4、计划任务
这一块计划任务可以自定义脚本,但是官网文档没写支持什么脚本类型,但是大概率是bash脚本,我没有需要定期执行的需求就没试,但这一块可以填补下飞牛没有计划任务的缺点。

其他功能ddns,飞牛上自带;STUN内网穿透还得设置光猫,没光猫密码不好弄就不说了
官网上还有附带了很多大佬的教程,针对性的看自己实际需要的了解,满足自己需求就可以,也不用什么都学会
https://lucky666.cn/docs/shareteach/

本篇相关yml等文件下载链接,:https://gitee.com/hswz5525/dockercompose
文章如有补充内容,我会在底部留言中置顶