type
status
date
slug
summary
tags
category
icon
password
注:本教程基于 ZeroTermux 软件,若有侵权联系删除!
准备阶段
材料:
一部安卓的旧手机(若已root可解锁更多玩法)
一张手机卡(用于分配ip地址,使用其分配的ipv6地址实现远程访问)
或者如果你家的宽带能给设备分配公网ipv6地址也可以不用手机卡
步骤
下载安装 ZeroTermux 软件
软件已经模拟了一个阉割版的Linux系统,但是其功能并不完整
想要远程使用ssh连接本机还需要进行以下操作
必要配置
换源提升官方下载服务的下载速度
右滑屏幕左侧或轻按音量+键打开右侧菜单
按第一个按钮切换源为清华源
后续会有几次询问,一律输入y回车
安装vim
vim为Linux常用文本编辑器,软件内模拟环境并没有自带,需要额外安装。
后续会有几次询问,一律输入y回车。
设置软件后台免杀
在手机设置中将软件设置省电白名单
输入以下命令设置后台免杀
在文件内任意位置(除了注释)插入如下内容
安装sshd服务
安装
在软件界面输入如下指令
出现询问选项一律输入y回车
安装完成后输入sshd启用服务
此时已经可以通过ssh连接到本机
连接方法
连接方法有以下两种:
- 局域网连接
客户端(请求连接的设备)和服务端(旧手机)连接同一个局域网
服务端打开设置查询本机 ip ,复制格式为 192.168.x.x 的内网ip地址(各品牌手机步骤略有不同,自己百度)
客户端(电脑):Win + R 输入 cmd 打开命令行输入:
客户端(手机):同样安装ZeroTermux软件并安装sshd服务后,直接输入
其中端口默认为8022(不是22是因为非 root 状态下22端口无权调用,所以安装的 sshd 服务默认为8022端口连接),用户名可以在服务端输入 whoami 查询到本机登录的用户名
- 流量连接
服务端打开设置查询本机 ip ,复制 ipv6 格式的内网 ip 地址(各品牌手机步骤略有不同,自己百度)
客户端(仅支持 WIFI 的电脑):另一部手机打开流量并打开热点,电脑连接后使用cmd输入
客户端(手机):同样安装ZeroTermux软件并安装sshd服务后,直接输入
设置开机自启
右滑屏幕左侧或轻按音量+键打开右侧菜单
向下滑找到开机启动按钮,切换为开状态
重启软件看到以下提示即成功开启
输入以下命令设置sshd开机自启
在文件内任意位置(除了注释)插入如下内容
远程连接ssh
上一步已经部署好了sshd服务,可以通过ipv6地址在流量环境下使用ssh连接,但流量运营商分配的ipv6地址会定期更换,不便于ssh的连接,那么如何解决这一问题呢?
可以购买网上的DDNS(动态域名解析)服务,将你的服务端的ipv6地址绑定到一个域名上面,开启DDNS服务,按照其教程配置即可。
运营商提供的ipv6地址是公网ip,可以使用ssh连接上对应的机器,所以可以使用ipv6的机器理论上都可以连接上这个运营商ipv6指向的机器。
笔者写了一个脚本,起了个名字叫做lDDNS(local Dynamic Domain Name System),可以实现DDNS等效的功能,可以实现长期远程连接服务端,不用操心ipv6地址的变动,原理如下:
- 查询服务端ipv6地址,比较上一次查询结果是否相等
- 若相等则不做任何操作,若不相等则ipv6地址已变化,进行地址上传操作
- 有两个版本的上传,一个使用git上传到Github私有仓库,优点为免费,缺点为配置略微麻烦;另一个使用你自己购买的有公网ip的服务器,优点为速度快且安全,缺点为购买服务器有一定成本
Git版 脚本配置
安装
服务端安装git
连接Github仓库
生成密钥(后面一路回车)
复制公钥
复制输出的公钥打开Github并登录,在设置页面添加ssh密钥
Title内随便填一个名字
在Key内粘贴刚刚复制的ssh公钥
设置完成后在服务端输入如下内容(不要修改)
若提示Hi,则本地git已成功连接Github
在自己的Github下新建一个私有库
Repository name填入仓库名字
选择Private设置仓库为私有(除非你想公开你的ipv6地址)
选中Add a README file
修改生成分支为master
在服务端输入
操作结束后若能在仓库内看到a.txt则表示上传成功
安装脚本
回到lDDNS-git目录
输入脚本内容
在vim中输入如下内容并保存
输入以下命令测试是否成功
若能在仓库内看到更新的的lDDNS.txt文件,则安装完成
设置定时检查地址变化和开机自启
定时执行脚本可使用crontab这个工具,但是由于软件模拟的Linux没有systemctl服务,无法使用crontab这个工具,故使用无限循环脚本来实现定时检查功能。
在~/lDDNS-git目录下执行下列命令
在vim中输入以下内容并保存
输入以下命令设置lDDNS-git开机自启
在文件内任意位置(除了注释)插入如下内容
Server版 脚本配置
注意:Server版需要你有自己的服务器,且服务器拥有公网ip
PS:其实可以直接内网穿透,只不过内网穿透只针对一个端口
安装
创建lDDNS-server目录
输入脚本内容
在vim中输入如下内容并保存
输入以下命令测试是否成功
若能在服务器根目录看到更新的的lDDNS.txt文件,则安装完成
设置定时检查地址变化和开机自启
定时执行脚本可使用crontab这个工具,但是由于软件模拟的Linux没有systemctl服务,无法使用crontab这个工具,故使用无限循环脚本来实现定时检查功能。
在~/lDDNS-server目录下执行下列命令
在vim中输入以下内容并保存
输入以下命令设置lDDNS-git开机自启
在文件内任意位置(除了注释)插入如下内容
客户端ssh配置
使用以下脚本可以通过ipv6地址快速连接服务端
ssh_git.sh
ssh_server.sh
进阶操作
安装Linux系统
软件内模拟的Linux环境是不完整的,想要完整的Linux系统可以通过如下操作来安装(使用软件内置脚本)
步骤
右滑或双击屏幕左侧或轻按音量+键打开右侧菜单
点击MOE全能开始安装脚本
后面有选项一律输入y回车
脚本安装完成后会进入这个界面,按上下键切换选项或上下滑动屏幕切换
这里如果手机未root则选择proot
手机已root则选择chroot
安装容器需要较长时间,请耐心等待
第一个选择配色可以跳过
该页面选择第一个选项,不可跳过
该选项随意选,无影响
该选项选择Baidu的DNS解析
NO
YES
这里笔者选第一个
这里笔者选第一个
这里选第一个进入安装界面
这里看自己喜好,笔者这里选择Ubuntu
这里笔者选第一个
进行安装,选第一个
请问您是否想要新建一个sudo用户呢?
选择 否
(忘记截这张图了。。)
是
进入这张图的界面,说明已经安装完毕了,可以选择取消退出该界面
等待语言环境安装完成之后,若弹出如下界面,说明已经安装成功并进入系统了
加密IP地址
虽然通过ssh传输的文件已经经过了ssh传输的加密保证不会被抓包获取明文IP,但是储存在云端的IP地址是明文保存的,如果不是很放心的话可以进行加密再传输使用,以下为需要修改的文件
Git版本 加密版
服务端
lDDNS_ipv6_git.sh
客户端
ssh_git.sh
Server版本 加密版
服务端
lDDNS_ipv6_server.sh
客户端
ssh_server.sh
补充
快速打开容器
在服务端目录内若想要快速打开Linux,可输入这条命令直接打开
其中参数需要修改为p或者c,取决于服务端安装的容器为proot还是chroot
在容器内安装宝塔
若安装完Linux系统后想要安装宝塔面板,需要在安装的Linux中先安装dpkg
然后才能安装得上宝塔面板(笔者踩过的坑)
修改命令行风格
如果想要原版Linux的命令行风格,在服务端界面下输入tmoe进入proot
选择第二个
先停止后台的进程
然后选第四个
选第八个,修改为bash
重新打开Linux,可以看到已经改好了
绑定域名
开机自启/后台保活
- 作者:lveMonsi
- 链接:https://blog.lvems.top/article/230523
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。