今日观点!安卓手机+termux+群晖frp实现远程控制手机
本文的主要内容是手机上部署frp进行穿透,应用场景各位自行发挥,请勿用于违法用途。此处举例为采用闲置安卓手机进行远程打卡。
(资料图)
一、手机部署Termux
安装F-Droid软件市场,下载Termux
下载安装即可
二、下载frp软件包
https://github.com/fatedier/frp/releases
注意,服务器端为frps,客户端为frpc,服务器端和客户端版本号必须一致,架构可不同。
当前需求的逻辑为:
通过手机上的frpc将放在公司的手机上的vnc服务端口穿透给家里的frps服务器,在家里用vnc客户端连接相应端口控制公司的手机。
所以我们需要下载手机端使用的arm64的客户端,以及家里用的服务端,如amd64或其他平台,我直接采用了群晖上的docker容器,只需要版本号一致即可。
我全套环境都用的是v0.43.0,大家用最新的就行
三、服务端部署:
此处我采用docker方式部署,快速稳定占用小,大家按各自情况部署即可
搜索frp,安装stars最多的,下拉选择版本,我的是0.43.0
下载后运行即可
如果出现闪停的话,可以看下日志,大部分情况是有端口冲突,默认需要7000端口无占用
选择终端机,通过命令启动,
输入命令:
/bin/sh
此处逻辑为调用docker exec命令,可以进入容器后台。
cd /etc/frp
ls
cat frps.ini
进入frps配置目录,不知道目录是哪个的可以看进程处后面的路径
修改配置文件frps.ini
vi frps.ini
按下键盘的i,进入vi的编辑模式:
调整端口
[common]
bind_addr = 0.0.0.0
#bind_addr为服务端绑定的地址,0.0.0.0为监听本机全部地址
bind_port = 9998
#bind_port为服务端绑定端口,也就是将来客户端需要去连接这个端口进行通信,需要映射到公网
dashboard_addr = 0.0.0.0
#dashboard_addr为服务端显示面板地址,下为端口、用户名密码,不需要映射到公网
dashboard_port = 3001
dashboard_user = admin
dashboard_pwd = admin
#日志调参保持默认即可
log_file = ./frps.log
log_level = info
log_max_days = 3
#认证参数,客户端和服务端保持一致,建议设置复杂点
authentication_method = token
token = 123456
详细配置可以参考官方文档,如增加auth方式等
https://gofrp.org/docs/reference/server-configures/
编辑完成后按键盘esc,输入:wq 回车保存
重启容器服务,
然后去路由器映射群晖IP及对应的监听端口,上方配置为9998端口。
四、手机端部署frpc
先配置frpc.ini文件,
[common]
server_addr = xxx.xxx.xxx.xxx
#家里服务器的公网IP,我当前使用的是域名进行ddns,所以我这里直接写域名,感兴趣的话可以留言我在单独开一个ddns的文档
server_port = 9998
token = 123456
#token保持一致
dns_server = 114.114.114.114
#如果上面用了域名,这里必须配置dns,不然会走到ipv6的dns解析
[mobile-vnc]
# "[ ]"方括号标是标题,并非限制服务类型,单纯就是个名字
type = tcp
#根据你需要的协议进行选择,vnc为tcp
local_ip = 127.0.0.1
#local_ip需要根据你手机开启vnc服务的地址,有的为本机私有ip,大部分为127.0.0.1,尝试的话可以用当前手机上的vnc客户端连接127.0.0.1
local_port = 65123
#本地的vnc端口
remote_port = 9999
#在服务器上新开启的端口,用于映射本地vnc端口
#加密及压缩设置
use_encryption = true
use_compression = true
将frpc.ini及frpc文件发送到手机微信或者qq之类的上面,选择通过其他打开,选择termux打开
点击EDIT进行保存,不用管他提示啥
进入termux,输入
cd
ls
#查看目录下
cd downloads
#进入下一层目录downloads
ls
绿色的是我之前的frpc,大家目录下应该只有后两个白色的文件
mv 'frpc1.0_linux_arm64\frpc1' frpc
#修改文件名称,同理修改配置文件为frpc.ini
给frpc增加执行权限:
chmod 777 frpc
此时目录下文件如下:
绿色执行文件 frpc,白色配置文件frpc.ini
./frpc -c frpc.ini
#执行frpc并以frpc.ini配置文件运行
ctrl c中断进程
./frpc -c frpc.ini &
#后台执行
24673为进程id,
kill -9 24673 终止进程
写在最后
仅提供一种穿透的思路,实际场景,可便捷通过手机接入wifi,从远端进行扫描,适用于侦测场景,也可进行服务映射,适用于办公场景。
#手机上VNC服务端可从F-Droid下载droidvnc-ng开启服务