威联通QNAP通过Shell脚本实现腾讯云/DNSpod的IPV6公网DDNS以及NAS和qb的https证书设置

2023-01-10 18:15:37 4点赞 42收藏 10评论

这篇文章整合了许多大佬的文章,一些简单的步骤在本文中将省略,可以在相关链接中查找。另外一些基础操作也省略了,这需要读者具有相关的经验。希望对大家有帮助,这套流程下来我非常顺利,希望你也能成功!

前言

最近入手了一台QNAP TS-428,随着IPV6公网的普及,目前家中的宽带已经可以获取到公网IPV6地址(中国移动-需要光猫设置成桥接模式,并且路由器打开ipv6功能)。经过设置路由器开放IPV6防火墙后,经中国联通流量测试(流量默认支持IPV6网络)可以正常访问。随后我将NAS获取的ipv6公网地址添加到域名解析中,也可以正常使用。但是过了一段时间后由于NAS获取的公网ipv6地址变化,导致无法正常访问。因此最好在NAS上设置好DDNS,同时将SSL证书替换到NAS中。

一、openwrt上开放IPV6端口

参考:https://zhuanlan.zhihu.com/p/375655093

我这里只需要设置好WAN做PPPOE即可,不需要对WAN6进行设置。我使用的固件会在LAN中显示获取到了IPv6地址,然后在LAN的DHCP服务器的IPv6设置中:路由通告服务、DHCPv6服务设为服务器模式、NDP代理禁用、DHCPv6为无状态+有状态,即可。

然后防火墙的通信规则中按照知乎的样式添加一条转发规则,并按知乎的教程设置好名称、源区域、目标区域、端口号、限制地址。

重新连接网络后,可以在设置中查看是否获得24开头的ipv6地址。同时可以用https://ds.test-ipv6.com/ 查看ipv6连通情况(并不是非常准确)。

这时可以通过http://[2409:8b43:311b:b6e0:211:32ff:fe12:3456]:5000/ 这样格式的地址尝试访问NAS(将[]中的地址替换成NAS获取的地址和端口号)

二、手动设置域名验证解析

DNSPOD里设置一个二级域名、AAAA、和你的IPV6地址即可,等待解析生效后就可以尝试用域名访问了。

三、设置HTTPS

1.更换NAS的ssl证书

官方教程 https://docs.qnap.com/operating-system/qts/5.0.x/zh-cn/替换服务器证书-8E7C1926.html

在腾讯云中申请你的二级域名ssl证书,下载时选择其它。

下载SSl证书下载SSl证书

然后转到NAS的控制台>系统>安全>SSL证书和密钥,转到服务器证书,单击取代当前证书,选择导入证书。这时证书选择.pem格式,私人密钥选择.key格式并应用。

更换证书更换证书

2.设置qb的https

SSH连接 在类似 /share/CACHEDEV1_DATA/.qpkg/qBittorrent/ 的目录中新建ssl文件夹,将.key和.crt文件复制进去,然后用chmod 755 ***.key 修改文件的权限。

然后再修改 .qpkg/qBittorrent/.config/qBittorrent/ 目录的qBittorrent.conf中的WebUIHTTPSCertificatePath=***.crt 和 WebUIHTTPSKeyPath=***.key

填写参考:/share/CACHEDEV1_DATA/.qpkg/qBittorrent/ssl/ab.abc.com_bundle.crt

然后重启qb即可(nas的app中停止再启动)

四、用脚本自动更新DDNS

经过搜索,有一个通过docker的ddns-go项目,但是无奈咱们的小机器实在没有那么多内存来开docker(也许可以,但是没必要)。另外QNAP自带的DDNS(网络与虚拟交换机中)自定义DDNS服务大多是国外的使用起来不太方便,听说群晖里就自带DNSPOD的DDNS,乐。最后结合DNSPOD关于DDNS的文档说明,应该是可以通过shell脚本来实现自动更新的。因此我也找到了一个大佬的项目。

知乎:https://zhuanlan.zhihu.com/p/401048713

原作者的使用说明:https://blog.csdn.net/Imkiimki/article/details/83794355

如果你无法访问GitHub那么知乎上分享的下载地址也是最新的版本。

1、获取DNSPOD的API

https://www.dnspod.cn/login?s_url=https://console.dnspod.cn/account/token/token

这里注意选择:DNSpod Token。然后创建密钥,ID应该是六位数。

然后修改ArDNSPod中的dns.conf安装“ID,KEY”的顺序替换arToken

2、设置脚本

然后在NAS的SSH中测试下面命令是否正确输出ipv6地址,其实eth0替换成本机的网卡设备名。

ip addr show dev eth0 | sed -e's/^.*inet6 ([^ ]*)/.*$/1/;t;d'

这里我输出得到两行地址24开头的公网、和fe开头的内网,因此我这里将这句改成,后面添加的意思是去掉第二行

ip addr show dev eth0 | sed -e's/^.*inet6 ([^ ]*)/.*$/1/;t;d'| sed '2d'

将这个命令替换到脚本的65行中,修改后这一行是

ip addr show dev eth0 | sed -e's/^.*inet6 ([^ ]*)/.*$/1/;t;d'|sed '2d' | awk 'NR==1'

威联通QNAP通过Shell脚本实现腾讯云/DNSpod的IPV6公网DDNS以及NAS和qb的https证书设置

随后在修改一下第25行的解析类型=3

最后同样的修改sh和conf的权限为755。

脚本我上传的位置是 /share/CACHEDEV1_DATA/.qpkg/ddns/ 。特别的有网友提到QNAP在重启之后会删除非系统文件,我这个位置应该不是系统文件的范围应该不会被删除吧。

如果会删除的话,按照下面这个添加计划任务的方案,就是手动安装一个用不到的app,然后将dns脚本的内容替换该app中的脚本。但是考虑到app安装的位置是.qpkg,应该不会被自动删吧。

https://blog.csdn.net/hondsam/article/details/103920016

3、设置计划任务

就是上面那篇文章,重新启动admin账号登录到ssh中然后修改crontab.

文件位置:/etc/config/crontab

补充一下,设置计划任务时我用的sh /share/CACHEDEV1_DATA/.qpkg/ddns/ddnspod.sh。请验证一下这个命令是否能被执行,我这里提示找不到dns.conf,需要将sh中最后一行的$DIR替换成你的目录。之前都是在目录下直接运行一直没发现。脚本可能读不出来


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

展开 收起

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

2679元起

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

3299元起

QNAP 威联通 TS-464C 4盘位NAS(赛扬N5095、8GB)

QNAP 威联通 TS-464C 4盘位NAS(赛扬N5095、8GB)

2079元起

QNAP 威联通 TS-216 双盘位NAS (ARM Cortex A55、2GB)

QNAP 威联通 TS-216 双盘位NAS (ARM Cortex A55、2GB)

1179元起

QNAP 威联通 TS-462C 4盘位NAS(赛扬N4505、4GB)

QNAP 威联通 TS-462C 4盘位NAS(赛扬N4505、4GB)

1879元起

QNAP 威联通 TS-564 五盘位NAS (N5105、8GB)

QNAP 威联通 TS-564 五盘位NAS (N5105、8GB)

1980元起

QNAP 威联通 TS-464C2 4盘位NAS(赛扬N5095、8GB)

QNAP 威联通 TS-464C2 4盘位NAS(赛扬N5095、8GB)

2699元起

QNAP 威联通 TS-262C 双盘位NAS(赛扬N4505、4GB)

QNAP 威联通 TS-262C 双盘位NAS(赛扬N4505、4GB)

1699元起

QNAP 威联通 TS-264C-4G 双盘位 NAS存储(N5105、4GB)

QNAP 威联通 TS-264C-4G 双盘位 NAS存储(N5105、4GB)

2000.13元起

QNAP 威联通 TS-464C 4盘位NAS 黑色(赛扬N5095、8GB)

QNAP 威联通 TS-464C 4盘位NAS 黑色(赛扬N5095、8GB)

3479元起

QNAP 威联通 TS-873A 8盘NAS(V1500B、8GB)

QNAP 威联通 TS-873A 8盘NAS(V1500B、8GB)

7460元起

QNAP 威联通 TS-464C 4盘位8G内存四核心处理器网络存储服务器内置双M.2插槽NAS(含企

QNAP 威联通 TS-464C 4盘位8G内存四核心处理器网络存储服务器内置双M.2插槽NAS(含企

2099元起

QNAP 威联通 TS-416 四盘位NAS(Cortex-A55、4GB)

QNAP 威联通 TS-416 四盘位NAS(Cortex-A55、4GB)

1579元起

QNAP 威联通 TS-264C 宇宙魔方 8G内存2盘位四核心处理器网络存储服务器内置双 M.2 插槽NAS私有云

QNAP 威联通 TS-264C 宇宙魔方 8G内存2盘位四核心处理器网络存储服务器内置双 M.2 插槽NAS私有云

1879元起

QNAP 威联通 TS-212P3 双盘位NAS(Realtek RTD1295、1GB)

QNAP 威联通 TS-212P3 双盘位NAS(Realtek RTD1295、1GB)

799元起

QNAP 威联通 TS-453Bmini 4盘位NAS(J3455、4GB)

QNAP 威联通 TS-453Bmini 4盘位NAS(J3455、4GB)

1899元起
10评论

  • 精彩
  • 最新
  • 为啥威联通的webdav特别慢?

    校验提示文案

    提交
    感觉他们的webdev确实不太好用

    校验提示文案

    提交
    没办法,我只能用alist挂载威联通,然后再用alist的webdav

    校验提示文案

    提交
    收起所有回复
  • ddnsgo要不了几个m内存,连这点内存都没有就真的太难了

    校验提示文案

    提交
    ts428是arm64架构,好像不支持docker?内存也只有2GB [喜极而泣]

    校验提示文案

    提交
    支持的。我上一个乞丐机TS-212P3 1G内存 RTD 1295比你的还差一些,平时运行transmission frpc zerotier三个容器,资源占用还是很克制的。所以轻量应用容器放心尝试,一是arm64架构的镜像很普遍的,二是容器还更容易管理维护。不知道为啥那么多人吐槽TS-212P3,入门家用真的够,相比x86功耗也低。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 补充一下,设置计划任务时我用的sh /share/..../ddns/...sh。请验证一下这个命令是否能被执行,我这里提示找不到dns.conf,需要将sh中最后一行的$DIR替换成你的目录。之前都是在目录下直接运行一直没发现。

    校验提示文案

    提交
    qb的https证书crt应该该用pem,crt会导致域名打不开。

    校验提示文案

    提交
    收起所有回复
  • 虽然我也搞通了家里的IPv6公网地址,用myqnapcloud.cn域名http访问可以正常解析,但发现现实场景很受限,因为公司网络环境没有分配IPv6地址,解析了也访问不了,而用手机网络访问NAS的情形太少了。我改用zerotier将家里局域网或者NAS主机接入zerotier创建的私有网络,搞台腾讯云轻量应用服务器做moon节点,访问也快。myqnapcloud.cn域名解析IPv6作为备选方式了。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
42
扫一下,分享更方便,购买更轻松