背景:书接上回,
课题组成员都有自己的账号,且能通过内网访问服务器,进行远程连接了。我们知道内网中的主机可以访问公网的主机,反之不可以访问。那么如果课题组成员在家不在内网区域内,如何通过ssh连接服务器呢,这就需要内网穿透。
我们课题组成员只需要看2.3 外网设备加入到网络即可
一、内网穿透原理
二、内网穿透实现
2.1 登录zerotier创建一个网络
1. 进入zerotier管理网页
ZeroTier – Global Area Networking
没有账号的需要邮箱注册一个账号,注册成功后登录zerotier管理网页即可
2.创建一个网络
课题组的一个成员创建即可
3.给该网络自定义一个名字
2.2 内网服务器端安装配置zerotier
1. 安装zerotier
ctrl+alt+T 打开服务器终端,执行下面命令安装zerotier(ubuntu)
curl -s https://install.zerotier.com | sudo bash
安装成功后会显示:Success!You are ZeroTier address [当前设备的ID].
注意!需要记住这个当前设备的ID,这个ID就是我们服务器的ID
如果后续想更新该软件,可以执行下面命令
sudo apt install zerotier-one
2. 加入网络
使用命令将服务器连接到我们之前在zerotier中创建的网络编号(网络ID),如果连接成功会显示 200 join OK
sudo zerotier-cli join 网络ID
3. 将zerotier配置为开机自启动
sudo systemctl enable zerotier-one.service
4. 查看当前连接的网络
执行下面命令查看当前连接的网络,如果列表中出现Network ID、Name 说明连接成功,也会显示IP
sudo zerotier-cli listnetworks
5. 断开之前加入的网络
如果想断开之前加入的网络,进行下面操作,成功则返回 200 leave OK
sudo zerotier-cli leave 网络ID
2.3 外网设备加入到网络
1. 外网设备下载安装zerotier
每个课题组成员下载并安装zerotier,安装完成后会在右下角显示这个
2. 加入之前创建的网络
点击上图zerotier的图标,选择Join New Network-->输入之前2.1zerotier管理网页创建的网络ID
打开之前创建网络的网站即zerotier管理网页,下拉进行如下操作
2. 访问测试
在zerotier管理网页中可以看到三个设备加入成功,接下来就可以互相访问了,外网的设备就可以访问内网的服务器了,只不过ssh连接的时候需要输入的是自己主机对应的Managed IPs,如果能成功连接,说明内网穿透成功!
这个系列彻底完结,撒花~