打造专属的Kali ISO – 简介

封装定制的Kali ISO很简单,很有趣,很有意义.你可以用Debian的live-build脚本对Kali ISO进行全面的配置.这些脚本以一系列配置文件的方式对镜像进行全面的自动定制,让任何人都可以轻易地就能打造一个Live系统镜像.官方发布的Kali ISO也采用了这些脚本.

前提

最理想的是在预装Kali的环境里定制你的Kali ISO.如果不是这样,请务必使用最新版本的live-build脚本(3.x分支的脚本可用于Debian wheezy).

准备开始

首先我们要用以下命令搭建好定制Kali ISO的环境:

apt-get install git live-build cdebootstrap kali-archive-keyring
git clone git://git.kali.org/live-build-config.git
cd live-build-config
lb config

封装Kali ISO的配置(可选)

config目录里包含了定制ISO的各种重要的自定义选项,这些选项在Debian的live build 3.x页面有文档说明.然而如果你没有耐心,请特别注意以下的配置文件:

config/package-lists/kali.list.chroot – 包含要安装在Kali ISO里的软件包的列表.你可以指定移除已经安装的软件包.也可以切换你的Kali ISO的桌面环境(KDE,Gnome,XFCE,LXDE等).

hooks/ – hooks 目录允许我们在不同阶段调用脚本封装定制Kali Live ISO.更多关于hooks的信息,参考live build 手册.举个例子,Kali是这样添加取证模式的引导菜单的:

$ cat config/hooks/forensic-menu.binary
#!/bin/sh cat >>binary/isolinux/live.cfg <<END label live-forensic
menu label ^Live (forensic mode)
linux /live/vmlinuz
initrd /live/initrd.img
append boot=live noconfig username=root hostname=kali noswap noautomount
END

封装ISO

在封装ISO之前,可以指定需要的架构,选择amd64或者i386.还要注意”lb build”需要root权限.如果你不指定架构,live build将根据你现在使用的架构来封装ISO.

如果你想在在32位系统封装64位的ISO,务必打开多架构支持:

dpkg --add-architecture amd64
apt-get update

配置live-build封装64位或者32位ISO:

lb config --architecture amd64 # for  bit
# ...or...
lb config --architecture i386 # for bit lb build

最后一个命令需要一些时间,因为它下载所有需要的软件包然后封装ISO.可以先去喝杯咖啡.

为今后封装ISO提速

如果你打算经常定制ISO,你可以把kali的软件包缓存在本地便于今后的封装.最简单的就是安装apt-cacher-ng,然后在每次打包时配置http_proxy环境变量.

apt-get install apt-cacher-ng
/etc/init.d/apt-cacher-ng start
export http_proxy=http://localhost:3142/
.... # setup and configure your live build
lb config --apt-http-proxy http://127.0.0.1:3142/
lb build

封装定制的Kali Live ISO的更多相关文章

  1. centos7 二次封装定制

  2. Kali Linux渗透测试实战 1.2 环境安装及初始化

    1.2 环境安装及初始化 目录(?)[-] 环境安装及初始化 下载映像 安装虚拟机 安装Kali Linux 安装中文输入法 安装VirtualBox增强工具 配置共享目录和剪贴板 运行 Metasp ...

  3. kali linux安装教程及VMware Tool工具的安装

    一.Kali Linux在VMware下的安装 kali系统的简介 1.Kali Kali Linux是基于 Debian 的 Linux发行版,设计用于数字取证和渗透测试的操作系统.由Offensi ...

  4. openstack封装镜像

    1.准备工作:准备你想要封装的各种镜像的iso,完整版本最简单版本都ok,只要能出虚拟机就行,这个大家去官网下载自己要的iso就可以,我这里用centos6.4最简版本,因为分给我的活让做这个的... ...

  5. 最详细的windows10系统封装教程

    目录 自定义封装(定制)windows10教程 关于本教程及用到的工具的声明 第一阶段: 封装前的各种环境准备 安装vmware 创建虚拟机 对虚拟机进行分区 配置好BIOS 为虚拟机安装window ...

  6. openstack快速封装镜像

    本来是该写对接ceph的,但是临时有事了,必须先弄镜像,因此提前写这个了,我个人不是按官网来封装镜像的,是按自己的习惯,所以觉得信不过的可以用官网的方式,有兴趣的可以看看都知道,openstack创建 ...

  7. Kali Linux Web 渗透测试视频教—第二十课-利用kali linux光盘或者usb启动盘破解windows密码

    Kali Linux Web 渗透测试视频教—第二十课-利用kali linux光盘或者usb启动盘破解windows密码 文/玄魂 目录 Kali Linux Web 渗透测试视频教—第二十课-利用 ...

  8. 安装Kali Linux操作系统Kali Linux无线网络渗透

    安装Kali Linux操作系统Kali Linux无线网络渗透 Kali Linux是一个基于Debian的Linux发行版,它的前身是BackTrack Linux发行版.在该操作系统中,自带了大 ...

  9. 浅谈RFID电子标签封装技术

    1RFID技术概述 1.1RFID技术概念 RFID是RadioFrequencyIdentification的缩写,即射频识别技术,俗称电子标签.RFID射频识别是一种非接触式的自动识别技术,它通过 ...

随机推荐

  1. 第一堂java web课

    一天的课程上完,虽然很累,但是因为自己的收获,所以我很开心. 第一节课老师带我们大家学习了HTML,学了很多标签,比如:html,head,body <html></html> ...

  2. js中event.target,this

    event.target这是注册事件时的对象,或者它的子元素.通常用于比较 event.target 和 this 来确定事件是不是由于冒泡而触发的.经常用于事件冒泡时处理事件委托. 1.this和e ...

  3. python遍历目录

    os.walk() 用元组表示(dirpath, dirnames, filenames): 第一个是根路径,dirpath为str类型: 第二个是根路径中的文件夹,dirnames为list类型: ...

  4. java编程思想

    Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理 ...

  5. Servlet后续的尾(yi)巴--------Filter过滤器

    -------载录自  http://www.blogjava.net/yangaiyou/archive/2007/08/29/140854.html  感谢博主心如止水 一心向佛 描写出这么的具体 ...

  6. 理解模数转换器的噪声、ENOB和有效分辨率

    ADC的主要趋势之一是分辨率越来越高.这一趋势影响各种应用,包括工厂自动化.温度检测和数据采集.对更高分辨率的需求正促使设计者从传统的12位逐次逼近寄存器(SAR)ADC转至分辨率高达24位的Δ-ΣA ...

  7. 如何为Kafka集群选择合适的Partitions数量

    转载:http://blog.csdn.net/odailidong/article/details/52571901 这是许多kafka使用者经常会问到的一个问题.本文的目的是介绍与本问题相关的一些 ...

  8. 在eclipse导入项目的步骤【转】

    1. Import 2. Next 3. 确定  选中copy projects into workspace    Finish 这样项目就导入进来了. 4.导入jar包 Configure Bui ...

  9. [整理]Svn常见问题汇总。

    1.’.’ is not a working copy.Can’t open file‘.svn/entries’: 系统找不到指定的路径. 解答:原因是输入的访问路径不正确,如svn://192.1 ...

  10. ASP.NET-【缓存】-使用ASP.NET缓存

    缓存一个List 泛型结构 1.显示 var s = Get("personsl"); foreach (var item in s) { Response.Write(item. ...