⚠️ 法律与免责声明
本文内容仅供网络安全技术学习与合法授权测试参考。未经授权对任何计算机信息系统进行探测、入侵、数据获取或干扰均属违法行为。请严格遵守《中华人民共和国网络安全法(2025年修订版)》《中华人民共和国数据安全法》《中华人民共和国个人信息保护法》及《中华人民共和国刑法(2020年修订版)》第二百八十五条、第二百八十六条等相关法律法规。作者不对读者因不当使用文中技术而产生的任何法律责任或后果承担责任。技术本身无罪,但使用技术的人必须守法。
文中所有示例均在本地隔离环境或已获书面授权的目标上演示。
概述
本章重点在于基于虚拟机搭建Kali Linux环境,在此基础上准备好Python、Java、Burp Suite等软件,后续也是主要基于Kali Linux环境进行学习、研究工作。
前置要求与准备
硬件要求: 内存8GB+、硬盘空闲60GB+、主板支持虚拟化技术
软件要求:VirtualBox 6.1+、Kali Linux系统ISO镜像
- :warning: 博主宿主机为Ubuntu 22.04LTS版本,故文章基于Ubuntu撰写,其他操作系统请自行斟酌调整。
warning: Kali Linux可从此处下载最新版本
本文涉及使用的Kali Linux安装自kali-linux-2026.2-installer-amd64.iso。warning: VirtualBox及Extension Pack下载页面
请自行按照本地操作系统类型自行选择下载。请自行在BIOS中开启虚拟化技术支持选项。
VirtualBox安装
设置Ubuntu系统镜像源
为了提高软件下载速度,需要提前修改速度较快的镜像源。
若本地默认源速度并不慢,也可不用替换。
#== 切换默认镜像源
#-- 修改前先备份
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak$(date +%Y%m%d)
#-- 预览替换为清华源
sudo sed 's#http[s]://[a-z0-9.]*.com/#https://mirrors.tuna.tsinghua.edu.cn/#g' \
/etc/apt/sources.list | grep -v '^#|^$'
#-- 保存替换为清华源
sudo sed -i 's#http[s]://[a-z0-9.]*.com/#https://mirrors.tuna.tsinghua.edu.cn/#g' \
/etc/apt/sources.list
#-- 拉取最新软件列表
sudo apt -y update
#== End
安装VirtualBox及扩展包
Ubuntu下安装VirtualBox
#== 安装VirtualBox
#-- 同步最新软件列表信息
sudo apt -y update
#-- 查找VirtualBox安装包信息
apt search virtualbox
#-- 若有某些版本的配置残留,则通过以下命令移除
sudo apt purge --auto-remove -y virtualbox-6.0 virtualbox-6.1 virtualbox-7.0
#-- 安装VirtualBox及扩展包
sudo apt -y install virtualbox virtualbox-ext-pack
#== End
Kali Linux安装及配置
创建kali虚拟机
新建虚拟机
依次点击“控制”-“新建”按钮:

“类型”下拉框选择“Linux”,“版本”下拉框选择“Other Linux(64-bit)”,“名称”输入框输入你的虚拟机名字,最后点击“下一步”按钮:

“内存大小”建议设置4GB,宿主机配置低的可以设置为2GB,最后点击“下一步”按钮:

“虚拟硬盘”默认选择“现在创建虚拟硬盘”即可,然后点击“创建”按钮:

“虚拟硬盘文件类型”选择“VMDK(虚拟机磁盘)”即可,点击“下一步”按钮:

“存储在物理硬盘上”默认选择“动态分配”即可,点击“下一步”按钮:

“文件位置和大小”这里硬盘大小设置为100GB,磁盘按需分配,一开始不会使用这么多,最后点击“创建”按钮:

恭喜你!到这一步我们已经完成了一台空白虚拟机的创建工作。
虚拟机设置
选中刚才新建的虚拟机,点击“设置”按钮,进行细微设置调整:

宿主机与虚拟机粘贴板和拖放设置,方便复制和拖放文件:
“共享粘贴板”设置为“双向”;
“拖放”设置为“双向”。

CPU核数设置:
CPU核数多的情况下,可以适当调整这里。

光驱挂载:
依次点击“存储”-“没有盘片”-“光驱”-“选择或创建一个虚拟光盘文件”。

在弹出的虚拟光盘选择窗口点击“注册”按钮,在弹出的窗口选择已经下载到本地的ISO文件,此处注册过,所以直接在列表中选择kali-linux-2026.2-installer-amd64.iso即可:

此时光驱便已挂载上了我们下载好的ISO镜像:

网络设置:
网卡1使用默认的NAT方式;
网卡2使用桥接网卡。

宿主机目录挂载到虚拟机中,按照1~6步骤操作即可:
步骤说明:
步骤2:此按钮用于新增共享文件夹;
步骤3:选择宿主机需要共享给虚拟机的目录;
步骤4:勾选后,虚拟机内只能读取目录内文件;不够选则还可以在目录内执行写入、删除等高危操作;
步骤5:每次虚拟机启动就自动挂载,可通过步骤6的挂载点进行访问;
步骤6:设置在虚拟机内的固定挂载目录,按照目录去访问即可。

虚拟机中安装Kali Linux
以上设置完成后,点击“确定”按钮即可关闭“设置”对话框。此时,点击“设置”按钮右侧的“启动”按钮即可启动虚拟机,启动后即可开始读取光盘,进入Kali Linux的安装界面。

此时,按下<code>Enter</code>按钮即可进入图形化安装界面,语言选择“中文(简体)”,点击“Continue”按钮即可:

国家默认“中国”即可,点击“继续”按钮即可:

配置键盘默认即可,点击“继续”按钮:

稍微等待系统探测,主网络接口默认即可,点击“继续”按钮:

等待系统配置网络,输入主机名称,点击“继续”按钮:

创建普通用户账号,输入新用户的全名,点击“继续”按钮:

账户名默认即可,点击“继续”按钮:

设置新建用户的密码,点击“继续”按钮:
两次输入密码,务必保持一致;
请牢记此密码,后续登录便使用此密码。

因在虚拟机安装,故磁盘分区默认使用整个磁盘即可,无需分区,点击“继续”按钮:



/ – 根节点主要包含:/boot-启动文件、/root-root用户home目录和其他必须的一些文件;
/var – 日志、程序数据目录;
swap – 交互分区,用于内存不足时,将内存中最少使用的程序暂存到交互分区中;
/tmp – 临时目录;
/home – 普通用户的默认home根目录。

将改动写入磁盘改为“是”,然后“继续”即可。

软件选择:
安装默认推荐的桌面即可。

等待安装完成:

安装GRUB启动引导器:

选择磁盘,继续:

安装完成,移除光盘,重启虚拟机:

输入账号密码即可登录系统:

Kali设置
root密码设置
#== 初次安装完成后,打开终端
#-- 设置root密码
# 第一个输入rtfsc8即安装过程中创建用户的密码
# 第二次和第三次输入root设置的新密码(这个密码也务必记住)
sudo passwd
#-- 切换root用户验证密码
su - root
#== End
软件源设置
#== 更换清华软件源
#-- 修改前备份
cp /etc/apt/sources.list.d/kali.sources \
/etc/apt/sources.list.d/kali.sources.bak$(date +%Y%m%d)
#-- 预览修改源配置
sed 's#http[s]*://http.kali.org/#https://mirrors.tuna.tsinghua.edu.cn/#g' \
/etc/apt/sources.list.d/kali.sources | grep -v '^#|^$'
#-- 保存软件源配置
sed -i 's#http[s]*://http.kali.org/#https://mirrors.tuna.tsinghua.edu.cn/#g' \
/etc/apt/sources.list.d/kali.sources
#-- 拉取最新软件列表
apt -y update
#-- 更新软件
apt -y upgrade
#== End
常用软件安装
#==
#--
#== End
Python2.7及Python3.x安装
#== Python安装
#-- 检查Python安装情况
dpkg --list python?
#-- 显示已安装Python安装2和Python安装3
# 查看Python安装2的版本号
python2 --version
# 查看Python安装3的版本号
python3 --version
#== End
OpenJDK安装
安装情况检查
#== OpendJDK安装情况检查
#-- 检查安装情况
# Kali默认安装了OpenJDK-25-jre
dpkg --list openjdk*
#-- 安装openjdk-25-jdk
sudo apt -y install openjdk-25-jdk
#== End
下载并安装Oracle JDK8
通过Oracle官方页面下载JDK8对应操作系统的安装包
#== 安装解压版本的Oracle JDK 8u501
#-- 解压jdk到/usr/lib/jvm目录进行安装
sudo tar xvf jdk-8u501-linux-x64.tar.gz \
-C /usr/lib/jvm/
#-- 安装jdk8版本的javac
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.8.0_501/bin/javac 8501
#-- 安装jdk8版本的java
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.0_501/bin/java 8501
#-- 配置默认版本的javac
sudo update-alternatives --config javac
#-- 配置默认版本的java
sudo update-alternatives --config java
#-- Kali Linux默认使用zsh,可以通过以下命令确认使用的shell类型:
# env | grep -i shell
cat <<EOF >>~/.zshrc
#== java home
JAVAC_VERSION=\$(javac -version 2>&1 | awk '{print $2}')
if [ -n "\$JAVAC_VERSION" ]; then
export JAVA_HOME=\$(dirname \$(readlink -f \$(which javac)))
export JAVA_HOME=\$(dirname \$JAVA_HOME)
export CLASSPATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar
export PATH=\$JAVA_HOME:\$PATH
fi
EOF
#-- 加载最新配置
source ~/.zshrc
#-- 验证配置生效
# javac版本是1.8.0
javac -version
# JAVA_HOME路径也正常打印
env | grep -i java_home
# 通过JAVA_HOME直接全路径执行javac验证版本也是1.8.0
$JAVA_HOME/bin/javac -version
#== End
切换不同版本jdk
首先通过update-alternatives切换javac和java的版本;
然后通过source ~/.zshrc重新加载环境变量完成完整的Java JDK版本切换。
#== 验证~/.zshrc版本切换是否有问题
#-- 切换到jdk25
# 切换javac命令
sudo update-alternatives --config javac
# 切换java命令
sudo update-alternatives --config java
#-- 加载最新配置
source ~/.zshrc
#-- 验证配置生效
# 查看版本切换到jdk25
javac -version
env | grep -i java_home
$JAVA_HOME/bin/javac -version
#== End
Burp Suite
Kali Linux中默认已安装Burp Suite,个人可以免费使用社区版本。
留言