

利用旧手机搭建LinuxDeploy用作服务器,同时使用frp实现内网穿透
source link: https://www.kejiwanjia.com/jiaocheng/84473.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

📖 目录 [显示]
1、一台已经root的手机(必须要root),我的是安卓9版本的小米9
2、需要的软件
Linux Deploy 下载地址
BusyBox 下载地址
JuiceSSH 或者 Termius都行 因为这三个软件的下载或多或少都需要具备外网的环境,所以如果没有下载途径的话可以直接从我下面的网盘里下载 网盘链接 提取码:30yj
安装以及配置步骤
1、安装BusyBox
安装好软件后直接打开点击install就行了,安装过程需要授予它root权限,默认的安装路径是 /system/xbin ,如果需要修改的话可以进到设置里面修改
2、安装Linux Deploy
安装好软件后,点击左上角三个横杠,选择设置,勾选 锁定Wi-Fi 和 CPU唤醒
之后将下面的 PATH变量 设置为你刚才BusyBox的安装路径,之后点 更新环境
3、配置Linux Deploy
发行版:我这里选择的是CentOS
架构:架构的话取决于你自己的CPU架构,可以去下载DevCheck 来查看自己的CPU架构,(选错架构的话会导致后面安装失败)可以看到我的是arrch64的,所以我的架构的那一栏就选择arrch64,选择其他发行版的话同理
源地址:推荐使用国内的镜像源,可以从下面的镜像源中选一个
http://mirrors.bfsu.edu.cn/centos-altarch/
http://mirrors.nju.edu.cn/centos-altarch/
http://mirrors.ustc.edu.cn/centos-altarch/安装路径:默认
镜像大小:取决于你自己手机,可以和我一样先设4个G,反正之后可以调整
用户名与密码:自己随便设就行,用于后面通过ssh连接
本地化:选择 zh_CN.UTF-8
DNS:默认
挂载:根据自己需求,如果需要访问手机内部文件则勾选,挂载点设置为下图所示
SSH:没什么好说的,一定要启动,SSH设置保持默认就行
4、安装CentOS
上述配置完成后返回到主页,点击右上角三个点,选择安装,等待安装完成即可。之后点击启动,若如下图所示则表示启动成功,其中倒数第二行后面一定要是done,否则则意味着安装失败
5、登录到Linux
打开之前安装的JuiceSSH或者Termius,新建连接,服务器地址填 127.0.0.1 用户名和密码即为之前配置的用户名与密码,之后点击连接,不出意外的话,你就通过ssh连接上了你的Linux。同时你还可以使用处于同一局域网下的其他设备来连接到Linux,服务器地址即为你的手机IP,也就是显示在Linux Deploy软件主页上的地址。
下面讲如何通过内网穿透实现从公网访问这台手机上的Linux
主流的内网穿透工具有:花生壳、ngrok和frp,其中花生壳是收费的,而且价格还不太低,ngrok和frp都是免费的,不过ngrok免费版本每次启动会变IP,而frp的话则需要你拥有一台具有公网IP的服务器,由于我主要是自己搭着玩的,手上也正好有一台服务器,所以就选择了用frp来实现内网穿透。
服务端配置
frp下载地址:下载地址,根据架构不同,选择相应版本下载
wget https://github.com/fatedier/frp/releases/download/v0.38.0/frp_0.38.0_linux_amd64.tar.gz
tar -zxvf frp_0.38.0_linux_amd64.tar.gz
可以将解压完的文件改个名,方便使用
mv frp_0.38.0_linux_amd64 frp
进入frp目录中
cd frp
下图为文件夹里包含的文件,其中前三个是与客户端相关的文件(以c结尾代表client即客户端)后三个则是与服务器相关的文件(以s结尾代表server)
因为我们是在配置服务端,所以我们可以把前三个文件删除
rm frpc frpc.ini frpc_full.ini
然后修改frps.ini文件
vim frps.ini
首次打开应该只有如下两行
向其中添加如下配置

bind_port:表示用于客户端和服务端连接的端口,这个端口号我们之后在配置客户端的时候要用到。
dashboard_port:是服务端仪表板的端口,若使用7500端口,在配置完成服务启动后可以通过浏览器访问 x.x.x.x:7500 (其中x.x.x.x为你服务器的IP)查看frp服务运行信息。
token:是用于客户端和服务端连接的口令,请自行设置并记录,稍后会用到。
dashboard_user 和 dashboard_pwd:表示打开仪表板页面登录的用户名和密码,自行设置即可。
vhost_http_port 和 vhost_https_port:用于反向代理HTTP主机时使用,本文没有使用,可以不管
编辑完成保存退出就行(vim操作不会的话自行百度搜索)
之后就可以运行frps的服务端了
./frps -c frps.ini
如下图所示即代表运行正常,可以访问 x.x.x.x:7500 并使用自己刚设置的用户名密码登录,即可看到仪表盘界面
此时的服务端仅运行在前台,如果Ctrl+C停止或者关闭SSH窗口后,frps都会停止运行,因此使用nohup命令将其运行在后台,首先Ctrl+C停止服务,之后输入命令
nohup ./frps -c frps.ini &
输出如下内容即表示正常运行
nohup: ignoring input and appending output to 'nohup.out'
此时使用Ctrl+C关闭nohup,frps依然会在后台运行,使用jobs命令查看后台运行的程序,可以看到frps在后台正常运行。
接下来配置服务器端开机自启。由于在Linux Deploy中搭建的CentOS无法使用systemctl以及service命令,所以我们需要进行下面的操作
wget https://github.com/smaknsk/servicectl/archive/1.0.tar.gz
tar -xf 1.0.tar.gz -C /usr/local/lib/
ln -s /usr/local/lib/servicectl-1.0/servicectl /usr/bin/servicectl
ln -s /usr/local/lib/servicectl-1.0/serviced /usr/bin/serviced
sudo vim /lib/systemd/system/frps.service
在frps.service里写入以下内容
[Unit]
Description=fraps service
After=network.target network-online.target syslog.target
Wants=network.target network-online.target
[Service]
Type=simple
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/your/path/frps -c /your/path/frps.ini
[Install]
WantedBy=multi-user.target
然后启动frps
sudo servicectl start frps
打开自启动
sudo servicectl enable frps
至此服务端配置完毕
客户端配置
同样使用wget命令将相应版本的frp压缩包下载并解压,并删除其中frps相关的文件,留下frpc相关文件,编辑frpc.ini文件,默认打开如下图所示
由于之前在服务端配置了token,所以在客户端我们需要加入token
其中common字段下的三项分别为服务端的IP地址、端口以及刚添加的token,这些与之前服务端配置的保持一致就行
SSH字段则可以理解为自定义的规则,若之后你需要映射其他的端口,按照它的格式填写即可。
[SSH]:表示规则名称,自己定义
type:表示转发的协议类型,有TCP和UDP等选项可选择,可自行查询frp的手册
local_port:是本地应用的端口号,保持一致就行
remote_port:为该条规则在服务端开放的端口号,自己定义配置完成即可运行frpc了,执行如下命令
./frpc -c frpc.ini
配置开机自启则与服务端配置相似。
之后即可通过SSH连接到你的手机,IP地址为你服务器的IP地址,端口号为6000(即为你在SSH字段定义的端口),用户名与密码即为最初配置Linux Deploy设置的用户名与密码,教程结束。
注意:
1.文中二维码和链接可能带有邀请性质,请各位玩家自行抉择。
2.请勿通过链接填写qq号与密码、银行卡号与密码等个人隐私信息。
3.禁止纯拉人头,拉app注册等信息,发现必小黑屋。
4.同一种信息仅发一次,多发会被删除。
5.文章关联方不想展示也可以微信站长“socutesheep”删除。
Recommend
-
36
服务器 - @vhus - 玩儿了几年 PT 总是在折腾存储,各种方案都尝试过,存储的扩展问题会成为瓶颈。群晖等官方硬件是挺好的,但价格不理想,至少我想要的配置都比较贵。所以用闲置服务器架了个 NAS,当然不仅是 NAS
-
26
README.md Linux Deploy Copyright (C) 2012-2019 Anton Skshidlevsky, GPLv3...
-
11
翻译笔记之七:沿用旧译名而不是创建新译名¶ 在很长一段时间以来,我都认为自己作为译者,与其他译者并无关联,直到我发觉某个单词没有通用译名,而只能自己“发...
-
7
V2EX › Android Vivo 手机某系统进程开放 55555 端口疑似用作 mCDN droidmax61 · 1 小时...
-
7
美的618户外营销,用旧空调搭建了一个巨型二维码 作者: emily ...
-
8
如何在 Windows 11 上将 Android 手机用作网络摄像头-51CTO.COM 如何在 Windows 11 上将 Android 手机用作网络摄像头 作者:傻大个黑科技 2022-08-17 15:42:44 新冠疫情让人们了解了飞书、钉钉或...
-
5
用旧手机给小鹦鹉做了个直播网站 - V2EX V2EX › 分享创造 用旧...
-
9
V2EX › 宽带症候群 家里的 NUC8 一直用作 HTPC,想用来同时折腾单臂路由,不知是否可行?
-
10
macmini 用作家庭服务器, 有哪些服务推荐安装? V2EX › Apple ma...
-
7
在 破解 OctoStudio 过程中,我发现, 在电脑上构建 OctoStudio 信号桥接器,不令人满意,原因有 3 点: 电脑通常被认为是蓝牙客户端,而不被认为是...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK