大家好,这里是Cherry,喜爱折腾、捡垃圾、玩数码,热衷于分享NAS、docker玩耍经验~

前言

在上一篇文章里,我利用dockge实现了海康R1 NAS对docker compose的支持,并在文末示范了如何使用dockge来部署lucky。

有很多小伙伴对dockge不感冒,而是留言问如何通过海康R1自带的docker界面部署lucky,因此cherry就再来说说lucky部署和使用技巧。

那为什么我们需要在海康R1上部署lucky服务呢?这是因为海康R1目前暂未提供WEBUI管理页面,而系统里也没有提供反代、DDNS等服务,如果我们在R1上折腾docker后,很多服务会没有办法通过互联网访问,多少就有点不方便了。

因此通过第三方的lucky项目来实现海康R1上的DDNS、web服务,可以有效提高我们对NAS的管理和应用能力。

关于公网IP与DDNS

在正式开始前,先介绍一下公网IP的相关知识。

目前公网IP主要分为IPv4和IPv6,一般家庭宽带需要我们自行和运营商联系,要求他们开通IPv4或者IPv6业务,其中IPv4相对会困难一点,IPv6的话目前包括移动在内的主要运营商都会给了。

一旦我们获取了公网IP,就可以通过IP直接连接到NAS上,但是运营商给的IP地址是我们俗称的动态IP地址,平均过个2、3天就会自动变化,如果我们一直都采用IP地址来访问NAS的话,就需要手动去调整,特别麻烦。

而DDNS的目的就是将变化的动态IP映射到一个不变的域名地址上,这样我们就可以通过访问固定的域名来实现NAS访问。而反代的目的也是将局域网内的某一个端口进行变化,通过不同的二级域名+同一个端口来实现不同业务的访问。

Lucky主要功能介绍:

- 端口转发

- 动态域名(DDNS)

- Web服务

- Stun内网穿透

- 网络唤醒

- 计划任务

- ACME自动证书

- 网络存储


一、系统部署

开始项目部署前,我们先从网盘下载相关的工具,包括容器镜像。

夸克分享「lucky」

链接:pan.quark.cn/s/96affc23f543

如果网络不好的,建议选择导入功能,把网盘下载的镜像导入进去。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

如果网络OK,或者给docker功能配置了镜像库的(如1panel),比如下面这个操作,可以自行下载镜像。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

在docker页面搜索gdy666/lucky,别下错其它版本了。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

接着,在【镜像管理】里选择lucky镜像,点击【创建容器】。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

【存储空间】:左侧的存储路径可自定义,右侧的装置路径/goodluck不可更改,并把类型选择为读写。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

【环境】:lucky的使用建议使用host模式,所以直接在环境变量里设置,大家照抄就行。

# 网络设置为host

--net=host

# 重启策略

--restart=always

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

因为采用了host模式,所以没办法通过容器管理进入,查看日志可以看到webui端口是16601,因此我们在浏览器输入http(s)://NAS-ip:16601就可以了。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

二、系统使用

使用默认账号密码666/666登陆系统

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

初次登录以后建议大家设置一下安全内容,毕竟lucky上的设置会暴露我们全部的网络信息。这里建议关闭外网访问,设置安全入口,并且修改管理员账号密码

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

1、DDNS

DDNS服务目的是将我们的家宽可变的公网IP地址,转变为固定的域名地址,方便我们更好的访问NAS中的服务。要使用DDNS服务,务必确认自己的家庭宽带已经申请到了公网IPv4,IPv6地址,否则该功能是无法使用的。

尤其海康存储R1的管理页面是没有webui的,所以我们DDNS配置更多是为docker内的容器服务的。

这里以阿里云为例,我们首先要去阿里云购买域名,并且申请Acesskey。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题
NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

配置基本上是无脑的,只需要填入对应域名服务商的密钥就可以了。下面建议IPv4、IPv6都通过接口获取,然后在域名列表处,每一行填入一个域名,可以是二级的,也可以是多级的。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

2、Web服务

web服务其实就是我们通常指的反代功能,当然也包括302重定向、URL转跳、文件服务、文本输出等内容,但是我们都用不上,所以这里就重点介绍反代功能。

比如大家比较需要的,就是将【不同二级域名+同个端口】反代到不同的服务上的做法。

第一步,添加外部入口,首先打开【Web服务】-【添加Web服务规则】,默认的监听端口是16666,建议大家都修改一下;如果需要使用https服务的化,则需要打开TLS,否则默认关闭。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

第二步,设置不同子规律,点击规则最下方的【添加子规则】,服务类型选择反向代理,前端地址改为【项目+域名】的二级域名模式,后端地址改成局域网内的实际应用地址。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

这是我设置的不同容器应用的二级域名,只需要访问蓝色区域的外网地址就可以对应访问局域网内的容器服务了,而且全网只开放了16666这一个端口,十分安全。

NAS外网访问的DIY神器!互联网轻松访问海康R1的容器服务—利用lucky解决域名、反代等网络难题

除了ddns和web反代外,lucky还提供了如端口转发、stun内穿、网络唤醒、网络存储、SSL/TLS证书等服务,这些服务在海康存储R1中其实都用不大上,感兴趣的朋友可以从官方学习一下这些功能如何使用,所以这里就不一一介绍了。

写在最后

在lucky之外,如ddns-go、nginx proxy manager、nginx webui等项目都可以实现文章中的主要功能,但这些项目都有一个核心问题,那就是我们必须拥有公网IP。

如果没有公网IP,往往意味着无法使用IPv4、IPv6进行DDNS和反代!但是依旧有很多朋友,是无法获取到公网地址的,包括校园网、企业多层NAT后地址等,这个时候我们就要换一种方式来实现NAS和客户端之间的访问了,没错,就是异地组网和内网穿透服务。

下一期,我们介绍如何在海康存储R1上安装最经典的异地组网工具-tailscale。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

,

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。