kali linux 中文文档 下载 App

使用 live-build 自定义 Kali ISO 的高级技巧

live-build 简介

live-build 是 Debian Live 官方的构建工具,Kali 用它来生成官方 ISO。它的核心设计:

最小化构建

# 安装依赖
sudo apt install -y live-build kali-linux-headless kali-tools-top10

# 创建项目
mkdir kali-lite && cd kali-lite
lb config --distribution kali-rolling --binary-images iso-hybrid --desktop none --apt-indices false
lb build
# 生成 live-image-amd64.iso

高级配置技巧

一、修改启动菜单

默认启动菜单(图形安装、文本安装、Live、Forensic Mode 等)可以通过 config/bootloaders/ 下的模板修改。

mkdir -p config/bootloaders/grub-pc
cp /usr/share/live/build/bootloaders/grub-pc/grub.cfg config/bootloaders/grub-pc/
# 编辑 grub.cfg,添加自定义菜单项

二、注入自定义脚本(开机自动运行)

mkdir -p config/includes.chroot/usr/local/bin/
cat > config/includes.chroot/usr/local/bin/firstboot.sh << 'EOF'
#!/bin/bash
# 首次开机自动配置
passwd kali <<PASS
kali2024
kali2024
PASS

# 配置国内镜像源
cat > /etc/apt/sources.list.d/kali.list <<'APT'
deb http://mirrors.aliyun.com/kali kali-rolling main contrib non-free non-free-firmware
APT

apt update
echo "首次启动配置完成"
EOF

chmod +x config/includes.chroot/usr/local/bin/firstboot.sh

# 让它在开机时自动运行
mkdir -p config/includes.chroot/etc/profile.d/
cat > config/includes.chroot/etc/profile.d/run-firstboot.sh << 'EOF'
# 只运行一次,之后删除
if [ -f /usr/local/bin/firstboot.sh ]; then
  /usr/local/bin/firstboot.sh
  rm /usr/local/bin/firstboot.sh
fi
EOF

三、预装 SSH 密钥

mkdir -p config/includes.chroot/home/kali/.ssh
cp ~/.ssh/authorized_keys config/includes.chroot/home/kali/.ssh/
chmod 600 config/includes.chroot/home/kali/.ssh/authorized_keys

四、自定义内核参数

mkdir -p config/includes.binary/boot/grub/
cat > config/includes.binary/boot/grub/grub.cfg << 'EOF'
set default=0
set timeout=5

menuentry "Custom Kali (persistence)" {
    linux /live/vmlinuz boot=live persistence quiet
    initrd /live/initrd.img
}
EOF

persistence 让 Live USB 的所有改动持久化到 U 盘上(默认 Live 模式重启丢失所有数据)。

五、Persistence 持久化分区

构建 ISO 时可以预留一个固定大小的 persistent 分区,Live 系统启动后自动挂载并保存用户数据:

lb config --iso-volume "Custom Kali" --partition 8GB

或者在 auto/config 中通过 hooks 手动创建分区表。

六、Chroot hooks(构建时自定义操作)

config/hooks/live/ 下的 hook 脚本会在构建过程中(chroot 里)执行:

mkdir -p config/hooks/live
cat > config/hooks/live/01-custom-software.chroot << 'EOF'
#!/bin/bash
apt install -y fzf zsh
chsh -s /bin/zsh kali
# 修改 kali 用户默认 shell
EOF
chmod +x config/hooks/live/01-custom-software.chroot

构建速度优化

常见问题排查

构建失败时用 verbose 模式看详细日志:

lb build --verbose 2>&1 | tee build.log

常见问题:

团队共享

构建好的 ISO 可以上传到对象存储(阿里云 OSS、腾讯云 COS),团队所有人下载即用。或者把整个 kali-lite 项目推到 Git 仓库,每个人拉下来自己构建——保证可复现。