NetHunter和花生壳实现SSH远程访问内网安卓手机

x
用微信扫描二维码
分享至好友和朋友圈

  *本文作者:2benben,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。

  关键词: 内网穿透, 端口映射, SSH协议, 花生壳, Kali NetHunter

  

  本文针对普通家庭内网用户,有条件架设ngrok的大拿可以忽略。

  

  在我国,由于网民众多,运营商无法保证为每一个宽带用户提供全球唯一的公网IPv4地址,每个宽带用户其实都处于一个“大的局域网”内,使用着运营商指定的IP。 没有公网IP,自然不能架设网站,使用SSH等服务。快这好比国外地广人稀,家家是独立门牌(公网IP)的别墅,快递员上门就可以找到你。我们人多地少,xx大街多少号这样的地址给了小区,每家人用公寓的门牌号(运营商指定IP),快递由小区的物业代收,再转发给你。这个转发过程,即端口映射(NAT),实现包裹从商家发到你手里的过程,就是内网穿透。

  

  

  SSH是基于应用层的加密传输协议,由于其加密传输的特性,适合于不安全的网络环境中远程访问设备,常用的朋友都知道,但是如果在公网上使用,作为接收方必须有一个公网地址。好比商家让快递直接密送岛国动作片碟给你,他们只知道你的xx街多少号,直接找到你的独栋别墅容易,如果你住公寓,快递员就懵了。

  

  

  那么怎样通过SSH连上让没有公网地址的家庭设备,实现远程访问呢?最简单的方法是通过端口映射实现内网穿透,一款叫做花生壳软件可以解决这个问题。原理可理解为:你没事儿就打电话告诉花生壳你家住哪,然后告诉快递员送碟找花生壳,花生壳核对了主人名字,带着快递员进你家。在Win/Mac/Linux和树莓派上都有终端,唯独不支持安卓。手机可是最方便简易的设备啊! 有没有想过,在自己手机上架一个网站,发布到外网?或者远在天边的你拿一Pad,通过SSH访问位于任意内网的手机,在用手机远程辅导孩子功课,打开电脑关掉电视节目?或者在不那么友好的滲透测试环境里,靠放一台手机优雅的完成任务,避免笨重的PC和一看就不是好人的树莓派的尴尬。 如何实现呢? 最简单的思路就是在手机上用虚拟机跑个Linux,再装个Linux的花生壳客户端就可以了。

  经过多次实测,我选择安装了Kali NetHunter Linux, 主要的原因是自带了大量网络测试工具,对于各位少侠来说轻车熟路;现成的安装包,安装调试最简单。

  实现的必要条件是:

  

  1.一台Kali NetHunter支持的安卓手机(作者使用的是Nexus 6)
2.一个可运行SSH的终端(所作者使用的是iphone 5,随便装个Terminal软件)

  

  实现步骤是:

  

  1. 安装Kali NetHunter到安卓移动设备, 让Linux以Chroot方式在安卓移动设备上运行
2. 在Kali NeHunter Linux的Shell下安装和配置花生壳客户端
3. 在花生壳账户上配置端口映射
4. 将安卓移动设备接入目标内网,从任意外网设备通过SSH远程访问

  

  如果这些您都熟悉,那么看到这可以结束了,如果有疑问,请跟着下面步骤一步步来:

  1. 安装Kali Net Hunter到安卓移动设备

  1.1 支持设备

  首先需要一台 NetHunter 支持的移动设备, https://www.offensive-security.com/kali-linux-nethunter-download/ 所列的都可以。

  1.2 刷原厂Rom和Kali NetHunter固件

  先刷原厂rom,再刷NetHunter,具体的刷机方式请参考此链接: https://github.com/offensive-security/kali-nethunter/wiki%EF%BC%8C 安卓下建议使用Team Winning Recovery Project从SD卡刷机,WIndows推荐Nexus Root Kit, Linux下使用NetHunter Linux Root Kit

  1.3 当然你也可以通过虚拟机装Ubuntu、 Debian,稍微折腾点,篇幅限制请自行搜索。

  1.4 成功后你的移动设备里会出现 名为 NetHunter 的 APP 和 NetHunter Terminal 的 Shell

  2. 在Kali NetHunter下安装和配置花生壳

   2.1 打开Kali Net Hunter APP – >> 左上角的三道杠 ->> Kali Service,在界面中选择打开SSH

  

  

   2.2 下载花生壳客户端

  浏览器览器打开 https://hsk.oray.com/download/ 选择树莓派的版本后复制下载地址。因为Andriod手机也是ARM架构,我抱着试一试的心态下载了树莓派版本而不是Linux版本,成功!

  

  

  打开Nethunter Terminal APP (嫌手机打命令太麻烦,我这里用的Mac的Console通过SSH连上了移动设备)在Shell提示符下输入 wget https://hsk.oray.com/download/download?id=25 (这是我复制的地址,不一样请用你的)

  

  

  2.3 dpkg命令安装客户端

  Shell提示符下输入 ls 命令,记住下载的文件名,接着输入 dpkg -i 刚才看到的文件名 ,用dpkg命令安装软件包。

  2.4 客户端启动和状态

  安装结束后,Shell提示符下输入 phddns start, 启动花生壳客户端

  

  

  Shell提示符下输入 phddns status, 复制下图高亮所示区部位的SN,后面访问花生壳网页配置时会用到。

  

  

  2.5 更改Root密码

  现在Kali Net Hunter默认的root密码是空的,这样可不安全,请在Shell提示符下输入 passwd 命令, 设置Kali NetHunter的初始root密码

  3.在花生壳账户上配置端口映射

  偷懒部分借鉴别人的文章, 源文件地址: https://blog.csdn.net/charles_neil/article/details/77017910

  3.1 注册,购买

  浏览器访问www.oray.com注册好花生壳帐号,这个帐号是没有内网穿透功能的,需要花6¥购买激活。

  3.2 添加设备

  现在要让花生壳知道这个SN码所在的电脑是你帐号下面的,这样买的内网穿透功能才能使用。到花生壳官网 登录,进入 “管理中心” ,点击 “添加设备” ,输入刚才复制的SN码

  

  

  3.3 登录管理页面

  打开b.oray.com 这个管理页面,用SN码登录,默认密码是admin。

  由于是第一次登录,需要手机验证,照做就好。用SN码登录是没有内网穿透的,这个登录操作相当于是激活了这个SN所在的设备,现在换用之前注册的帐号登录。此时如果连接成功,你注册的账号和设备账号前的图标是绿色的

  

  

  3.4 添加映射

  用自己的帐号登录。打开管理中心的”内网穿透” ,点击”添加映射”

  

  映射类型: 自定义端口
域名: 注册的时候会送壳域名,随便选一个
应用名称: 随便填,就写ssh吧
内网主机: 填写需要映射的主机的内网ip如192.168.1.100,可以用ifconfig查到
内网端口: 22(SSH端口是22)
外网端口: 选临时端口,系统会随即给你指定一个。

  

  如果成功会有提示。

  

  3.5 通过SSH远程登陆内网手机

  上一步成功后,“内网穿透”界面会有外网访问地址一项,显示您的“外网地址(主机名):端口号“。

  

  
4. 将安卓移动设备接入目标内网,从任意外网设备通过SSH远程访问

  恭喜,用所给的地址和端口号就可以外网远程登陆SSH了。

  在远程设备的Linux控制台输入 ssh 用户名@外网地址(主机名):端口号, 由于Kali NetHunter默认root, 用户名这里写root就好,密码用刚才自己改的。

  ssh root@xxx.xxxxx.cc:22

  或者在客户端软件上自行配置以上信息。

  在连接到其他内网后后,记得在Kali 的 shell下运行 ifconfig看下本机地址,对应在花生壳的网站上更改本地ip设置。

  

  

  这是成功外网客户端(iphone 5)的运行效果,好了少年们,你也可以远程连接到我的安卓设备了,给你开一账号了解下? 怎么用发挥你们的想象力吧!

  *本文作者:2benben,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。

特别声明:本文为网易自媒体平台“网易号”作者上传并发布,仅代表该作者观点。网易仅提供信息发布平台。

跟贴 跟贴 0 参与 0
© 1997-2019 网易公司版权所有 About NetEase | 公司简介 | 联系方法 | 招聘信息 | 客户服务 | 隐私政策 | 广告服务 | 网站地图 | 意见反馈 | 不良信息举报

FreeBuf

互联网安全新媒体

头像

FreeBuf

互联网安全新媒体

5482

篇文章

14158

人关注

列表加载中...
请登录后再关注
x

用户登录

网易通行证/邮箱用户可以直接登录:
忘记密码