前置条件
- 1个至少是32GB的U盘,最好是USB3.0接口的
- 一台可以安装Virtual Box的电脑
需要下载的文件
- Kali Linux 64位 iso镜像文件: 下载地址
- Virtual Box 安装包 下载地址
- Kali Linux OVA镜像文件(OVA格式) 下载地址
- Virtual Box Extension Pack 下载地址
安装Kali Linux 虚拟机
我们需要借助Kali里面的一些工具来帮助我们制作加密U盘,所以我们需要首先安装一个Kali Linux虚拟机,如果你已经有了类似的虚拟机,可以忽略这个步骤。
利用安装包安装完VirtualBox之后:
- 在菜单项
管理
当中选择导入虚拟电脑
,然后选中之前下载好的Kali的OVA格式虚拟机镜像文件。 - 安装Virtual Box Extension Pack,这步主要是让虚拟机能支持USB3.0的设备
- 修改已经导入的Kali虚拟机的设置,在USB设备选项中选择
USB 3.0 控制器
- 启动Kali虚拟机,进入Kali之后,点击VirtualBox的
设备
菜单项,选择安装增强功能
,如果提示安装失败,可以直接将桌面上出现的光盘中的VBoxLinuxAdditions.run 拷贝至其他目录,修改其权限为755,然后手动运行此脚本即可。 - 设置共享文件夹,在VirtualBox当中操作,这步主要是方便后面将下载在windows里的Kali的iso文件拷贝至Kali当中。
U盘初始设置
- 选择VirtualBox的
设备
菜单,在USB
子菜单选中已经插在主机上的U盘设备,将U盘映射到虚拟机当中 - 找到Kali当中的GParted工具打开,选择已经挂载的U盘(如果你的虚拟机之前没有挂载过其他U盘,默认的挂载分区应该是
/dev/sdb
,本文演示截图当中显示为/dev/sdc是因为之前已经挂载过一个U盘) 然后先将U盘卸载,然后删除分区(记得执行顶部工具栏的回车样式的按钮)
写入镜像、U盘分区
将之前共享文件夹里已经下载好的Kali的iso文件拷贝至Kali当中
利用如下命令将该iso文件拷贝至U盘当中
dd if=kali-linux-2018.2-amd64.iso of=/dev/sdc bs=1M
- 利用parted工具对U盘当中未使用的其他部分进行分区,命令如下
parted #进入parted界面
select /dev/sdc #选择U盘分区
print #查看当前分区信息
mkpart primary 2937 23417 #制作新的分区,起始位置从2937M开始,到23417位置结束
print #查看新的分区信息
制作加密U盘
制作加密分区
cryptsetup --verbose --verify-passphrase luksFormat /dev/sdc3
确认覆盖分区,输入大写的YES,然后输入两遍密码之后,加密分区制作完毕
注意/dev/sdc3,在上面利用parted制作新分区时,其属于/dev/sdc下面的第三个分区
对加密分区格式化分区,分配卷标
cryptsetup luksOpen /dev/sdc3 usb #打开加密的/dev/sdc3分区至usb文件 ls /dev/mapper/usb #上面的命令执行完毕之后会在/dev/mapper目录下生成一个usb文件
mkfs.ext4 /dev/mapper/usb #将打开的分区格式化成ext4格式
e2label /dev/mapper/usb persistence #将分区卷标指定为persistence,名字必须为persistence挂载新的分区,写入验证文件
mkdir -p /mnt/usb mount /dev/mapper/usb /mnt/usb #将之前格式化的usb设备挂载到/mnt/usb目录下
echo "/ union" > /mnt/usb/persistence.conf
#写入一个persistence.conf文件,此文件会在启动时用来确认此U盘是用来加密存储的分区卸载分区,退出加密分区
umount /dev/mapper/usb cryptsetup luksClose /dev/mapper/usb
重启物理电脑,选择从U盘启动
进入Boot Menu之后,选择LIve USB Encrypted Persistence 进入系统,之后会让你输入之前创建加密分区时输入的密码,密码输入正确才能正确的进入系统,至此,整个制作加密Kali Linux U盘启动盘过程结束。