在任意手机上使用Androinix运行Kali Linux

介绍

之前,我们已经看过如何在任何已ROOT手机上使用AnLinux运行Kali Linux。Androinix的原理与AnLinux本质相同,但它比AnLinux在一些方面功能更强大,且更有优势。

本篇文章将教授你如何使用软件Androinix在任意已ROOT的安卓手机上运行Kali Linux。

如果你的手机未ROOT,你可以参考这篇教程来运行一个完整的x86_64架构的Kali Linux,该方案无需ROOT。对于一些老旧机型,你可以简单地一键ROOT它们。在安装了Kali后,你就可以在其中安装软件,甚至实现在手机上运行Metasploit包括未ROOT的手机。你也可以用同样的方法安装其它Linux发行版包括未ROOT的手机

下载必要软件

首先,我们需要下载必要的软件。

Termux

我们需要下载Termux。它在安卓手机上模拟出一个Linux系统。
我们可以前往F-Droid(https://f-droid.org/packages/com.termux/),或Termux的Github发行版页面下载(https://github.com/termux/termux-app/releases)。
截止目前为止,最新的稳定版是0.118.2。
如果该版本无法在你的手机上运行,尝试0.118.0版本或某个0.119预发行版。
在这里插入图片描述
在这里插入图片描述

Androinix

Androinix在Termux的基础上又模拟出另一个Linux系统。如果要更精确地说,Androinix使用PRoot利用Kali的基础文件系统(Root File System)在Termux中模拟出一个与其文件系统分离,但共享内核和进程空间的子系统。
如果你没有谷歌Play商店,可以试着从其官方Github发行版页面下载安装包
在这里插入图片描述

安装Termux

安装你下载的安装包。为了使Termux能够保持后台运行,将系统省电策略设置为无限制,并允许必要的权限。
在这里插入图片描述

配置Termux环境

初始安装后,我们需要为Termux更新所有软件包。这使得Termux为自己更新——获取Termux系统内部所有软件包的最新版本,并下载安装。
在Termux中执行下面的命令。
在这里插入图片描述

对于弹出的提示,我们全部键入y来选是。
在这里插入图片描述

开始Androinix的Kali安装导向

等待Termux更新完毕后,是时候安装Kali了。
我们打开Androinix应用,选择Linux发行版
在这里插入图片描述
之后,滚动选项找到Kali。
在这里插入图片描述
对于是否要让即将安装的Linux拥有图形化界面(GUI),我们选择仅命令行(CLI Only),因为Androinix提供的图形化界面Linux版本似乎不太稳定。
在这里插入图片描述
接着,Androinix将自动为我们复制一串命令。将该命令粘贴到Termux中,执行。这将自动为我们下载安装Kali Linux。

pkg update -y && pkg install wget curl proot tar -y && wget https://raw.githubusercontent.com/AndronixApp/AndronixOrigin/master/Installer/Kali/kali.sh -O kali.sh && chmod +x kali.sh && bash kali.sh

在这里插入图片描述
在这里插入图片描述
耐心等待直到安装完成。我们还注意到安装脚本弹出了一个可忽略的警告。现在可以输入./start-kali.sh来启动Kali了。

Kali初始配置

启动后,如同Termux一样,我们需要更新Kali内所有软件包到最新版本。输入下面的命令。

apt update && apt upgrade

在这里插入图片描述
在这里插入图片描述
对于更新过程中的所有提示,我们都选是(Y(es))。
在这里插入图片描述
在这里插入图片描述

使用ROOT运行Kali

你可能注意到了,在刚刚运行Kali的过程中,我们并没有使用ROOT启动。
然而,这会导致一些问题,例如执行真正需要ROOT权限才能执行的命令时会出错。譬如,一次带有系统检测的Nmap扫描。
在这里插入图片描述
确切地说,这是因为Androinix所基于的模拟程序Proot并不能真正让程序具有ROOT。
要想以ROOT启动Kali,先退出Kali回到Termux,在Termux中安装Termux Super User来获取安卓系统ROOT权限,再以ROOT启动Kali。

exit
pkg install tsu && tsu

在这里插入图片描述
然而,我们看到拒绝访问。这是因为我在使用的小米手机的系统出于安全考虑默认禁止任何软件使用ROOT。我们需要在设置中允许Termux。
在这里插入图片描述
之后,执行tsu时成功获取到ROOT。
然而,在我的安卓9系统上,获取ROOT后当前工作路径会自动更变为/。如果你的路径也更变了,执行下面的命令来回到start-kali.sh所在的路径,因为Termux中普通用户的家目录就是超级用户家目录的上级目录。

cd ~/..

然后启动Kali。

./start-kali.sh

在这里插入图片描述
现在我们成功已ROOT启动了Kali。看看它能否正常工作吧。我们将进行一次包含系统检测的Nmap扫描。如果你还未安装Nmap,运行下面的命令来完成一次检测。

apt install nmap && nmap localhost -O

在这里插入图片描述
这次,命令成功执行。
在这里插入图片描述

卸载Kali

有时,你可能想从Termux中移除Kali。
进入Androinix,找到你已安装了的Linux发行版,并长按。
之后,软件将自动为你复制一串命令。
在这里插入图片描述

wget https://raw.githubusercontent.com/AndronixApp/AndronixOrigin/master/Uninstall/Kali/UNI-kali.sh && chmod +x UNI-kali.sh && bash UNI-kali.sh

软件希望你将命令粘贴到Termux中执行以移除Linux。然而,由于我们曾用ROOT启动过Linux,直接执行该命令可能不奏效。
解决方法也很简单,只需要在ROOT下执行该命令。
在Termux中执行下列操作。

tsu
cd ~/..; wget https://raw.githubusercontent.com/AndronixApp/AndronixOrigin/master/Uninstall/Kali/UNI-kali.sh && chmod +x UNI-kali.sh && bash UNI-kali.sh

在这里插入图片描述
命令成功完成。现在你已经移除了Kali。

结语

许多在手机上运行Kali和其它Linux发行版的方式其实最终均依赖在Termux中运行PRoot。
在安卓手机上,由于限制过多,使得运行另一个系统成了难题。
常用的模拟其它系统的方法便是虚拟机。我们的确可以在安卓上做到这一点,但也会因为无法使用内核虚拟化(KVM)而使虚拟机的运行速度缓慢至极。但这也许有希望在新的安卓15和16上打破,因为Google刚刚为安卓新增了受保护的内核虚拟化(pKVM)功能。
一些其它的解决方案包括使用Chroot模拟Linux系统。然而,常见的能做到此功能的软件,Linux Deploy,是一个充满故障、年久失修的数字垃圾。
让我们拭目以待,看看未来是否会有更好的方法出现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值