群晖外网访问终极解决方法:IPV6+阿里云ddns+ddnsto

受够了群晖的quickconnet的小水管了,急需一个新的解决方法,这是后发现移动没有公网IP,只有ipv6(公网的),时候有小伙伴要问,要是没有ipv6就没办法访问群晖了吗? 不,当然不是,这时候就轮到ddnsto出马了,这就是解决没有公网ipv4的解决方法,顺便说一下,因为我需要更改群晖的默认端口,所以就算是群晖洗白了,quickconnet也是无法使用的,所以这个方法也是省了洗白的这一步。但是不洗白有没有影响这个就不知道了。 还有使用这个方法的是需要花钱的,想着白嫖的看到这句话的时候就可以略过了!!!!

1.购买域名,如果这步不会的话,麻烦去问度娘

2.获取accessKeyId和accessSecret

可以在阿里云控制台个人中心直接获取,但是一般建议使用RAM角色来进行权限控制,这样这个accessKey和accessSecret就只能操作域名,不能操作其他的资源,相对会比较安全。

3.环境安装,阿里云ddns需要用到python环境,所以需要安装Python环境,由于群晖7.1.1自带Python,所以Python不需要安装,只需要安装Python-pip,群晖需要开启ssh,打开家目录

4.开启ssh

5.打开家目录

6. 使用ssh软件连接群晖,我这里使用的是putty,使用其他的也可以。

7. 输入账户名和密码,密码不显示

8. pip3 安装、配置。群晖默认不支持 apt-get 之类的命令,使用 wget 下载 get-pip.py 安装 pip。

wget -O /tmp/get-pip.py https://bootstrap.pypa.io/get-pip.py python3 /tmp/get-pip.py # 权限不够的话,加上 --user # python3 /tmp/get-pip.py --user rm /tmp/get-pip.py

安装之后提示 pip3 的安装目录(一般是 /homes/USERNAME/.local/bin)不在系统的环境变量里。

要先跳到安装目录里,我这里的是这个

cd .local/bin ./pip3 -V ./pip3 list

配置环境变量 所以我手动把 pip3 目录/var/services/homes/admin/.local/bin加入环境变量。

nano ~/.bash_profile # 写入以下内容 export PATH=$PATH:/var/services/homes/admin/.local/bin # 保存、退出 # 运行以下命令使生效 source ~/.bash_profile # 最后可以检查一下 echo $PATH

更改源

pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple pip3 config list

pip3 卸载

python3 -m pip uninstall pip

安装阿里云SDK和其他第三方库

pip3 install --index-url https://mirrors.aliyun.com/pypi/simple aliyun-python-sdk-core-v3 pip3 install --index-url https://mirrors.aliyun.com/pypi/simple aliyun-python-sdk-domain pip3 install --index-url https://mirrors.aliyun.com/pypi/simple aliyun-python-sdk-alidns pip3 install --index-url https://mirrors.aliyun.com/pypi/simple requests
sudo chmod -R 775 alidns.py

输入下面代码进行验证

python3 aliddns.py

运行成功的图

切换root用户,输入sudo -i 切换到root用户之后,我们就可以使用文本编辑工具(vim或者nano)来编辑crontab的计划任务了。

vim /etc/crontab MAILTO=""PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin #minute hour mday month wday who command0 0 * * * echo "hello synology" #例如:每隔一分钟往tmp目录写入一个以时间戳命名的文件 */1 * * * * root touch /tmp/$(date +\%Y\%m\%d\%H\%M\%S)

最后 restart 一下 crontab 服务就可以了,以下是 DSM 6+ 重启 crontab 的方式:

synoservice --restart crond

如果是 DSM 7+ 系统则运行 synosystemctl restart crond 命令来重启 crontab

1.从ddnsto官网合适自己的ddnsto的安装包,我的是

然后我就偷个懒不写了,ddnsto官网有

原文链接:http://www.5ityx.com/cate100/209507.html

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享