WD My Cloud设置阿里云ddns,添加自启动/定时脚本

我们几个兴趣相投的小伙伴工作之余正在运行一个小型的创业公司,没有充裕的资金,没有固定的Office,为了选择一个合适的企业数据共享方案,我选择了西数的My Cloud存储设备,其双盘位可组RAID的特性,让存储更加安全;


然而,买回来后发现,My Cloud跟其更面向消费级的MyCloud Home比起来,在电脑端几乎没有现成的可用软件,只有一个可远程网页访问的方案,而且那个网页的打开速度还奇慢无比,完全没法用。

由于这个NAS硬盘支持在局域网内Samba方式进行挂载,所以想到了通过ddns(Dynamic Domain Name Server,动态域名服务)的方式来实现远程访问。

要进行以下步骤,假设你已经有一些Linux或

1)首先,你的MyCloud得插在直接连了公网的路由器上,如果你家是光纤上网,可能得直接插在光猫上面,对了,你家的光猫得支持端口转发才行。另外最重要的一点,由于IPv4的地址资源早已耗尽,导致有很多运营商给分配的都是运营商分配的私网地址,如果你家对外的IP不是公网地址,可以尝试跟你的运营商打电话沟通。通常联通宽带给的都是公网地址。

2)设置阿里云DDNS,有很多流行的DDNS可供选择,比如花生壳,但是据说免费版本的会有限速,而且也不太稳定,所以我使用了阿里云的DDNS服务,只需要在阿里云上花很少的钱买一个域名,并拿到AccessKey和AccessScrect,关于这一点,请移步:https://help.aliyun.com/knowledge_detail/48699.html

域名购买完后,需要手动建一条A解析记录,例如将nas指向0.0.0.0,后面会通过python脚本来调用接口修改这个IP地址

3)在这一步,使用我从网上找的python脚本,调用阿里云的接口来自动的设置ddns,这一步可以先在Mac或Linux里进行;请移步至这里,获取python调用的方法:https://my.oschina.net/yysue/blog/1922953

4)找到第3步python脚本及其依赖的python库,进行打包,在Mac上,一般的python2.7库的安装目录为:

    /usr/local/lib/python2.7/site-packages/

将该目录下的aliyun前缀的所有文件和文件夹,以及一个jmespath前缀的文件和文件夹,全部打包。例如打包指令为

    tar zcvf aliyun-python-lib.tgz aliyun* jmespath*

5)使用SSH登陆MyCloud,默认ssh的用户名为sshd,假设其IP地址为192.168.1.3,在Linux/Mac的命令行下或Windows的Powershell中输入

    ssh [email protected]

6)ssh登陆进MyCloud后,cd进入/usr/local/config/目录,这个目录下有读写权限,所有跟MyCloud的用户设置项都会存在这个目录下面,在该目录下面新建一个目录,例如名称为:ddns

    mkdir ddns

7)将第3步和第4步的文件复制到上一步的目录中,例如使用scp命令:

    scp aliyun_ddns.py aliyun-python-lib.tgz [email protected]:/usr/local/config/ddns/

8)登入MyCloud,解压上述的aliyun-python-lib.tgz

    tar zxvf aliyun-python-lib.tgz

9)由于上述python的库没有在python默认的目录下面,所以我们需要手动设置一下环境变量,才能运行python脚本,关于这一步,我们通过在/usr/local/config/ddns/目录写一个简单的shell脚本来实现:

touch ddns_update.sh

vi ddns_update.sh


#!/bin/sh

export PYTHONPATH=/usr/local/config/ddns/pylib/

python /usr/local/config/ddns/aliyun_ddns.py

10)在MyCloud的配置文件中添加一条定时记录,让系统每定时1分钟,自动调用一次ddns_update.sh脚本

    vi /usr/local/config/config.xml

找到节点 ,在下面添加一条记录,例如添加一条ddns_update记录

然后,找到其紧邻的power_off节点,进行一个类似的cron设置,如下:关于cron的知识,可以参考这里:https://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/crontab.html

11)完成以上步骤后,重启MyCloud,等待一分钟后检查阿里云的域名解析记录的IP地址是否已经被自动修改,如果成功,请继续以下步骤;

12)设置路由器端口转发,我使用的是极路由,安装超级端口转发插件后配置项如下:

MyCloud需要对外提供的端口为 

80——网页配置管理 ,由于一般运营商会封禁该端口,我们将路由器对外的8112端口与之绑定

22——MyCloud的SSH登陆默认端口

445——MyCloud的Samba服务端口,由于一般运营商会封禁该端口,我们将路由器对外的8445端口与之绑定(将samba端口改为8445端口后,windows上需要通过nginx进行端口转发才能访问,linux和mac无此问题)


分别给出Linux和Mac的挂载方法:

Linux 平台

1.创建一个用于挂载的目录,例如~/mnt

2.使用命令挂载sudo mount -t cifs -o user=username,password=password,port=8445 //nas.****.com/Public/ /mnt -o rw

username和password为系统管理员分配的用户名和密码

MacOS平台

1.打开访达>>前往>>前往服务器,输入如下:

smb://nas.*****.com:8445/

至此,MyCloud设置完毕,速度只取决于你家的宽带速度,不需要通过西数的服务器进行中转,兼职不能再爽!

你可能感兴趣的:(WD My Cloud设置阿里云ddns,添加自启动/定时脚本)