基于ssh反向代理使用无线adb

本文介绍了如何在无法直接访问手机的情况下,通过SSH反向代理和端口转发,实现PC无线连接手机进行ADB调试。步骤包括在PC和手机上配置SSH,生成并交换密钥,以及设置端口转发规则。最后,通过ADB命令连接到手机的无线ADB服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

由于某些网络环境限制,PC端无法访问手机,但手机可以访问PC

这个时候又不想用usb连接,那么就可以利用ssh来反向代理和端口转发

这样PC就能访问到手机然后愉快的使用无线adb了

步骤

手机上可以用termux、Magisk插件,或者eadb环境

我这里选择termux

电脑配置ssh

反向代理需要PC端开启ssh服务

可以通过下面的命令启动ssh服务,注意需要以管理员权限运行

net start sshd

如果你的电脑没有ssh,请参考

PC的ssh配置文件路径是C:\ProgramData\ssh\sshd_config

毕竟ssh服务有风险,所以改下配置,禁止密码登录

修改如下,这样就只能通过密钥登录了

PubkeyAuthentication yes
AuthorizedKeysFile    .ssh/authorized_keys
PasswordAuthentication no
# Match Group administrators
#        AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
  • 务必设置PasswordAuthentication no以禁止通过密码登录
  • 注意Match Group administrator和下一行需要注释掉

cmd重启ssh

net stop sshd
net start sshd

如果是powershell则使用下面的命令

Restart-Service sshd

补充,如果换了端口后连不上,再试试取消ListenAddress 0.0.0.0的注释,如果还是不行,那可能是防火墙的限制

这里设置为公钥登录了,不换端口也还好

手机配置ssh

这里用termux来操作,先下载apk进行安装

打开termux安装ssh

pkg install openssh

ssh-keygen生成密钥

公钥在/data/data/com.termux/files/home/.ssh/id_rsa.pub

把文件内容复制到PC端的%USERPROFILE%\.ssh\authorized_keys文件中,如果没有请手动创建

如果多个公钥,那么authorized_keys每行一个

添加之后重启下PC端的ssh服务

先打开无线adb功能

现在通过下面的命令实现反向代理和端口转发

ssh -NfR 15555:127.0.0.1:5555 username@192.168.1.140
  • 15555 是电脑本地端口
  • 127.0.0.1 是指手机的host,也可以换成localhost
  • 5555 是手机上无线adb的监听端口
  • username 是电脑的用户名
  • 192.168.1.140 是电脑的ip地址

正常情况下,现在可以通过下面的命令通过电脑连接到手机的无线adb了

adb connect 127.0.0.1:15555

然后可以看到电脑成功连上了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值