qnap 计划任务实现阿里云ddns方法

Dreama ·
更新时间:2024-11-13
· 615 次阅读

一直想弄个nas来同步自己的3台电脑工作文件+照片备份。

今日趁着某电商打折入了一台QNAP低端设备,想用外网访问和Qsync同步,但由于myqnapcloud.cn的速度不理想,而且也不够逼格,所以自己申请了域名,现在要解决的就是DDNS的问题了,

条件:你家里的网是公网,有自己的域名,我申请的是aliyun的域名,最便宜的那种

进入重点:

1.没有域名的去申请域名,申请完了,建一条A记录

主机记录那里我用的NAS,到时候访问就是nas.域名,如果你想用www.域名。访问你的nas那你主机记录就填写www,IP那里随便添,反正一会是要自动换的,你可以填写0.0.0.0。

2.建立完A记录后,生成你的AccessKey,(这个AccesKey就是用来外部修改你域名解析设置的接口)

点继续使用,并生AccessKeyId和AccessKeySecret (相当于用户名和密码),然后自己记录一下,稍后会用到。

3.下载aliyun.sh文件

https://github.com/cuteribs/ribsnetwork/tree/master/ddns

转自@可爱的排骨

将文件上传至你的QNAP目录,我上传到了 web/aliyundds下

4.创建计划任务并定时运行aliyun.sh

因为我并没有找到QNAP的计划任务,能定时运行,这点不如群晖,公司的群晖是有这个功能的。

所以我们只能通过SSH的方式手动用命令行创建计划任务去运行这个aliyun.sh

首先打开QNAP的SSH功能(默认没开启),开启方法 控制台-网络&文件服务-Telnet/SSH-勾选允许SSH链接。

然后使用找个打开SSH的软件,我这里用的PUTTY,登陆你的NAS

登陆后运行命令如下(这步的目的是为了验证命令的有效性,如果有效,再建立计划任务,如果无效建立计划任务也是错的)

{你的aliyun.sh的详细目录} {AccessID} {AccessKeySecret} {域名} {主机记录}

注意,这里的/share/CACHEDEV1_DATA/Web/aliyunddns/aliyun.sh 这个目录位置在Filestation里面如下图

(FileStation的目录是 DataVol1/Web/aliyunddns,但SSH里面不能这么写路径,得写/share/CACHEDEV1_DATA/Web/aliyunddns/)

详细命令如下图,运行后结果如下,

上面命令报了错,错误是权限不够,

没关系我们运行提升权限命令

[/] # chmod 775 /share/CACHEDEV1_DATA/Web/aliyunddns/aliyun.sh

然后再把上面权限报错的命令再运行一下

我这里是因为我运行过,所以提示我IP无变化,你们第一次运行的话提示跟我不一样。

这里的脚本使用http://members.3322.org/dyndns/getip 获取的IP,这里再次感谢@可爱的排骨 的脚本

运行成功后你的域名里面之前随便填写的IP,比如0.0.0.0 会变成你当前公网的动态IP

如果上面都成功后,下一步就是把这条命令放在QNAP的计划任务里面了。

这里参考了

https://blog.csdn.net/weixin_33966365/article/details/94316205

我们只需要运行

QNAP 的 crontab 放在 /etc/config/crontab
vi /etc/config/crontab
例如要每日5:00執行 backup.sh 的話,加上這行
00 5 * * * {这里就是你运行成功的SSH命令} 例如00 5 * * * /share/CACHEDEV1_DATA/Web/aliyunddns/aliyun.sh LTAI4FskNjfKwYRiPPMK*** cFGRRDVHMtsAG2rE7aXZp**** jia***.com ***
存檔

套用設定
crontab /etc/config/crontab

重啟 crontab
/etc/init.d/crond.sh restart

然后运行 crontab -l 查看一下计划任务是否创建好。

OK,到这里大功告成。各位如果按照此方案成功了,请大家多鼓励,(第一次写博客)。

补充一点:家里的公网IP 80和8080都是封闭的,所以别忘了做端口映射到你的路由器,把80和8081映射成你自己想要的,比如5000和5001,这样访问你的nas就在浏览器输入 域名.com:5000就行了,app同理


作者:IDEA#



计划任务 ddns 阿里

需要 登录 后方可回复, 如果你还没有账号请 注册新账号