群晖内网穿透攻略:Zerotier以及Tailscale
前言
最近正好多了一台笔记本,平时办公使用,因此为了随时可以访问电脑上的数据,这台电脑基本上在办公室24h开机状态。
于是就在这台电脑上装了个群晖,有时候在外面也方便我访问文件。
由于是ipv4的网络,还没有ipv6,本打算使用ddns动态解析域名的方式也不行,只能通过zerotier或者tailscale来进行内外穿透。
Zerotier方法
根据 官网的介绍 :DSM 7 不允许第三方应用程序以 root 身份运行。因此,我们现在建议使用 Docker 来运行 ZeroTier。虽然一开始这有点不方便,但不可否认,这是在 NAS 上运行第三方应用程序的一种更安全的方式。但是在重启或者升级系统后,无需重新配置。
1.安装Docker
群晖在DSM7中Docker改名为 ContainerManager,在套件中心搜索即可。
如果找不到Docker,前往 群晖官网spk下载地址:https://archive.synology.com/download/Package/ContainerManager 下载进行手动安装。
2.连接ssh
在控制面版的终端机和SNMP中,启动SSH功能 打勾,点击应用。
通过putty或者mobaxterm等ssh工具连接,输入用户名和密码。
切换到root用户
1
sudo -i
写入脚本
1
echo -e '#!/bin/sh -e \ninsmod /lib/modules/tun.ko' > /usr/local/etc/rc.d/tun.sh
设置可执行权限
1
chmod a+x /usr/local/etc/rc.d/tun.sh
运行一次脚本以创建 TUN
1
/usr/local/etc/rc.d/tun.sh
检查一下
1
2ls /dev/net/tun
# 返回值为 /dev/net/tun
3.安装zerotier
继续在终端中输入以下命令:
创建ZeroTier目录
1
mkdir /var/lib/zerotier-one
拉取安装镜像
1
2
3
4
5
6
7
8docker run -d \
--name zt \
--restart=always \
--device=/dev/net/tun \
--net=host \
--cap-add=NET_ADMIN \
--cap-add=SYS_ADMIN \
-v /var/lib/zerotier-one:/var/lib/zerotier-one zerotier/zerotier-synology:latest加入自己的网络
1
docker exec -it zt zerotier-cli join networkID #替换networkID为你的networkID
稍等片刻即可在zerotier的网站后台看到加入的群晖了。
Tailscale方法
Tailscale相对来说就比较简单一点了,前往 Synology packages 下载对应系统的spk软件。
在套件中心中点击手动安装,选中下载的spk文件,安装即可。
安装完成后打开,会跳转到tailscale网站,登录后连接即可。
最后
在我试过这两个软件后,优先推荐zerotier,速度比较快而且稳定。tailscale遇到过几次速度慢的情况,但是影响也不是很大。根据个人需求使用吧。或者两个都安装以便不时之需。