Lucky 实操技巧大全:用一台容器搞定 DDNS、SSL 与内网穿透

JackcatLucky1 月 前

如果你家里的 NAS、路由器或者小主机想从外面访问,通常要同时折腾 DDNS、反向代理、SSL 证书……软件装一堆,头都大了。Lucky(项目名 gdy666/lucky,官网 lucky666.cn)把这些功能全塞进了一个容器里,被称为“软路由瑞士军刀”。本文整理了从部署到避坑的实战技巧,帮你一次配好。

一、Lucky 能干什么

一句话:DDNS 动态域名、ACME 自动续期 SSL 证书、反向代理、端口转发、STUN 内网穿透、网络唤醒(WOL)全部集成。你不用再分别装 ddns-go、Nginx Proxy Manager、frp。

  • DDNS:宽带公网 IP 变了,自动把域名解析更新到新 IP(支持阿里云、腾讯云、Cloudflare 等)。
  • SSL 证书:基于 ACME 协议向 Let’s Encrypt 申请,到期前自动续签。
  • 反向代理:把 ip:端口 映射成好记的域名,并套上 HTTPS。
  • 端口转发 / STUN 穿透:没有公网 IPv4 的 NAT1 环境也能近似公网访问。

二、部署:Docker 最省事

官方推荐 host 网络模式,让 Lucky 直接拥有宿主机网络权限,避免端口映射和协议兼容问题。

version: '3.8'
services:
  lucky:
    image: gdy666/lucky:latest
    container_name: lucky
    restart: unless-stopped
    network_mode: "host"
    volumes:
      - /root/luckyconf:/goodluck   # 挂载配置,删容器不丢配置

装好后在浏览器打开 http://设备IP:16601,默认账号密码都是 666。除了 Docker,也支持二进制直装、OpenWrt 的 IPK 包、以及宝塔面板应用商店一键安装。

三、第一次登录必做两件事

  1. 立刻改密码:在设置里改掉默认的 666/666。
  2. 设置安全入口路径:例如 /mysecret,之后只能访问 http://IP:16601/mysecret 进后台,防止被扫描。

四、核心功能实操技巧

1. DDNS:泛域名一次配好

动态域名 → 添加任务,操作模式选“简易模式”,DNS 服务商选你买域名的平台,填入 API 密钥。域名列表填两行:

example.com
*.example.com

第二行是泛域名,后面所有子域名(nas.、ha.、alist.)的反向代理都能直接用,不用反复加解析记录。看到同步结果为“托管商记录一致”即成功。

2. SSL 证书:通配符 + 自动续期

安全管理 → 添加证书,添加方式选 ACME,证书机构 Let’s Encrypt,验证方式选 DNS(内网机器无法做 HTTP 验证)。域名同样填主域名 + *.example.com,一份证书适配所有子域。

  • IPv4 环境建议开启“DNS 查询强制 IPv4”和“仅使用 TCP 通道”,提高成功率。
  • 默认提前 30 天自动续签,建议改成 45 天更稳妥。
  • ⚠️ Let’s Encrypt 同一域名每周最多申请 5 次,别反复点;失败先看日志(多半是 DNS 传播慢,把等待时间调长再试)。
  • 国内域名必须备案,否则 HTTPS 也访问不了;不想备案可用 Cloudflare 托管 DNS。

3. 反向代理:一个域名管所有服务

Web 服务 → 添加规则,监听端口用 443(被运营商封就换 8443/9443),打开 TLS 并选刚申请的证书。然后添加子规则:

子规则名称:NAS 后台
服务类型:反向代理
前端地址:nas.example.com
后端地址:http://192.168.1.100:5000
  • 需要 WebSocket(Home Assistant、Emby 弹幕等)记得勾选启用 WebSocket。
  • 也可以用路径反代:前端 example.com/nas 指向同一后端,适合只开放一个域名的情况。
  • 证书申请成功后,务必在 Web 规则里打开 TLS 开关,Lucky 才会自动匹配证书。

4. 端口转发与 STUN 穿透

端口转发适合“IP + 端口”直连(比如运营商封了 80,就把服务映射到 16663 之类的高端口)。进阶技巧:

  • 范围转发:监听端口填 8000-8002,目标端口 9000-9002,自动生成多条规则。
  • 白名单:重要服务开启白名单模式,只允许自己的公网 IP 访问。
  • 无公网 IPv4:用 Lucky 的 STUN 穿透,在 NAT1 宽带下部署近似公网 IPv4 的反代服务。

五、性能与排错技巧

  • 转发卡顿:在转发规则 Options 里把 BufferSize 设为 32768(32KB),减少小包延迟;单条规则端口范围别超过 100 个连续端口。
  • 443/80 绑定失败:部分系统占用这些端口,可给二进制授权:sudo setcap 'cap_net_bind_service=+ep' /path/to/lucky 后重启。
  • 16601 端口冲突:在设置里改管理端口即可。
  • DDNS / 证书失败:先查 AccessKey 权限、域名 DNS 是否生效、设备能否拿到公网 IP;证书失败优先看日志。
  • 定期看访问日志,发现异常 IP 及时加黑名单。

六、安全最佳实践

  1. 改默认密码 + 设安全入口,绝不直接把管理后台暴露到公网。
  2. 重要服务一律上白名单 / IP 限制。
  3. 及时升级到最新版本(Lucky 迭代较快)。
  4. API Token / AccessKey 只给最小权限(如 Cloudflare 仅 Zone.DNS 的 Edit),别用 Global Key,更别截图外泄。

总结

Lucky 把一个家庭网络对外暴露需要的全部能力打包成了一个容器。配好 DDNS + 通配符 SSL + 反向代理这三步,基本就能优雅地用“域名 + HTTPS”访问家里所有服务;再叠加白名单和自动续期,长期省心。剩下的就是按上面这些技巧避开端口、备案、频率限制几个坑了。

发布评论

相关文章