Zerotier-Archlinux-Termius互通教程

使用Zerotier 和Termius 通过SSH创建个人PC服务器,并且用ipad连接Archlinux

Zerotier的配置和使用

Zerotier 是一款不需要公网 IP 内网穿透软件,ZeroTier 是一个专门用来建立点对点虚拟专用网(P2P VPN)的工具,它提供在线管理界面和全平台的客户端,不需要复杂设置,只要安装客户端并加入到自己创建的网络即可。

  1. 官方网站地址:https://www.zerotier.com

  2. 项目地址:https://github.com/zerotier

注册和客户端安装

注册账号

ZeroTier 可以通过邮箱或者 Google Github Microsoft 账号注册。

进入 Zerotier 之后就可以创建你的 Networks。NETWORK ID 是客户端连接到行星服务器的唯一识别码,需要牢记, 即每个客户端需要 Join 的 ID, NAME 可以随意更改。

网络配置

SUBNETZerotier One 使用 STUN 和隧道建立的 NAT,可以更改内网 ip 网段。NODES 是连入 NETWORK 的设备数,以及建立时间 CREATED

客户端配置

ZeroTier 支持 WindowsmacOSLinux 三大桌面平台,iOSAndroid 两大移动平台,QNAP(威连通)Synology(群晖)Western Digital MyCloud NAS(西部数据) 三个 NAS 平台,还支持 OpenWrt/LEDE 开源路由器项目。

下载地址:https://www.zerotier.com/download/

这里以 IpadAndriodArchlinux 设备为例介绍一下客户端如何与 planet 相连接挂载到内网地址。

ios 设备通过 Appstore 下载,Andriod 设备通过下载地址下载即可。Network ID,配置好 VPN 后就会启动连接。

SUBNETZerotier One 使用 STUN 和隧道建立的 NAT,可以更改内网 ip 网段。NODES 是连入 NETWORK 的设备数,以及建立时间 CREATED

Android 使用方法同理。

ArchlinuxTermial 中使用命令行下载和启动。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 安装zerotier-one
$ sudo pacman -S zerotier-one

# 开启和加入开机自启
$ systemctl start zerotier-one.service
$ systemctl enable zerotier-one.service

# 加入、离开、列出网络
$ sudo zerotier-cli join [此处id]
$ sudo zerotier-cli leave
$ sudo zerotier-cli listnetworks

# 获取地址和服务状态
$ sudo zerotier-cli status

这时会根据 MAC 地址分配给设备一个唯一认证字符串 Node ID,可用来在 Web 配置界面保留该设备不被删除以及帮助我们区分设备。我们在 Auth? 处勾上就可以让设备连接到 planet 中。

Ipad SSH

理论上来说在同一个局域网下 ssh 可以通过设备的 IP 地址来连接,此时我们通过 Zerotier 使不同局域网下的设备处于统一 Networks 下,只要 ssh Managed IP 即可完成设备间的互访。

Termius

Termius 是一个非常好用的 SSH 客户端,免费版就已经提供了 SSH 功能,满足我们连接并操作 Archlinux 的需求。IOS 通过 appstore 下载,Andriod 通过 google play 商店下载,这里以 ipad 设备为例对 archlinux 设备进行访问。在 termius 的设置中要输入连接名称 alias (随便取)、IP 地址(这里你要访问设备的 Managed IP 地址,在 Zerotier 配置页面)、SSH 端口号、用户名与密码。

SSH

Archlinux 需要设置 SSH 服务,下载配置命令如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 下载SSH
$ sudo pacman -S openssh

# 运行Open SSH
$ sudo systemctl start sshd

# 查看Open SSH状态
$ sudo systemctl status sshd

# 终止SSH服务器
$ sudo systemctl stop sshd

# 系统重新启动时自动启动 SSH 服务器
$ sudo systemctl enable sshd

# 从系统启动中删除
$ sudo systemctl disable sshd

下载配置启动 SSH 之后我们要对 SSH 配置文件中修改一些选项,以方便 ipad 或者其他设备可以连接到 linux服务器。

1
$ sudo nvim /etc/ssh/sshd_config 

我们可以在这个配置文件中修改我们的 SSH 端口,默认是 22。以及 Authentication 的状态,将 PermitRootLogin 设置为 yes 并且取消注释,就可以让访问设备打开 ROOT 权限。通过 PubkeyAuthentication 设置为 yes 那么只能允许服务器承认的 key 可以连接。修改完配置文件使用 sudo systemctl restart sshd 重新打开 ssh。

测试设备间互访

不同网络访问:Archlinux 连接 5g 网络,iPad 连接 wifi

从图中我们可以看到已经成功连接上了 ArchlinuxSSH。由于免费的根服务器在国外,可能访问速度不太稳定。

笔记本不休眠

1
2
3
4
5
6
7
# 编辑文件
$ sudo nvim /etc/systemd/logind.conf
# 将其中
# HandleLidSwitch=suspend
# 去掉前面的#改成
HandleLidSwitch=ignore
# 最后重启服务