从Debian转生成为Kali
起因
作为渗透必备的工具 Kali 无非是神一般的存在,而在渗透测试中我们通常都会需要用到具有公网地址环境,最方便的获取方式莫过于云服务器了,而在云服务商说提供的镜像中大多是不提供 Kali 镜像的,这是只能通过其它手段来实现在云服务器上部署 Kali 环境的目的了。
网上看到的一种方式是通过云服务商提供的存储服务上传自己的镜像上去,然后用自己的镜像来创建云服务器,这种方式是可行的,但这不得又要开启一个云服务吗,有些云服务商不提供这类的免费服务,而且有些小云服务商平台都不具备通过存储服务中的镜像来创建云主机的功能(比如我图便宜使用的云服务商就不提供)。
于是我就有了一个想法,Kali 不是基于 Debian 的吗,那我直接在云服务器上使用 Debian 的镜像,然后把软件源改到 Kali 的源上,然后更新内核,再装上必备的组件这不就成 Kali 了,理论成立开干!!!
只要是 Linux 版本相差不是太大就能转生成功,相差太大的话安装是会因为缺包而没法安装。
Debain 9 : 4.9 系列
Debain 10 : 4.19 系列
Debain 11 : 5.10 系列
Debain 12 : 6.1 系列
通过以下页面可查询 kali 各版本对应的内核版本
Releases History | Kali Linux
一般选最新的都能安装
配置需求
wiki 上说要想系统流畅运行需要的硬件要求:i386 和 AMD64 架构需要至少 2GB 的内存,如果需要图形界面,我感觉还是给大于 4GB 的内存更好。
存储这块我就直接上官方给的表吧
换源
# 安装密钥工具
sudo apt install -y gnupg
# 添加源
echo "deb http://http.kali.org/kali kali-rolling main non-free contrib" | sudo tee /etc/apt/sources.list.d/kali.list
# 安装密钥
wget -q -O - https://archive.kali.org/archive-key.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/kali-archive-keyring.gpg add -
# 更新软件包
apt update
# 升级系统,这一步会使用到 kali 源来升级,由此可升级内核成为 kali 的内核
apt full-upgrade
升级过程中会有一个提示,直接按 q
退出即可
然后选择语言
提示升级时是否对已安装的服务进行重启,选择 yes 即可
有些配置会提示是使用新的还是使用原始的,尽量选择使用新的
转生方向
Kali Linux Metapackages | Kali Linux Documentation
Kali Linux / Packages / kali-meta · GitLab
一个“standard”的 Kali 安装了以下软件包:kali-linux-firmware、kali-linux-core、kali-desktop-xfce、kali-tools-top10、kali-linux-default
,从而产生了这样的图表:
一个 "Purple" 的 Kali 安装了以下软件包:kali-linux-firmware、kali-system-gui、kali-themes-purple、kali-desktop-xfce、kali-tools-(identify|respond|detect|protect|recover),产生的图表:
转生
从 Kali 官网和 GitLab 查到,Kali 的 xfce 桌面环境只需要通过安装 kali-desktop-xfce
软件包来实现,同时可通过 kali-tools-top10
安装 Kali 中前 10 的工具
初级转生
仅一个桌面和前 10 的工具,和两个常用字典
apt install -y xorg kali-desktop-xfce kali-tools-top10 wordlists webshells
完整转生
apt install -y xorg kali-linux-firmware kali-linux-core kali-linux-default kali-desktop-xfce
kali 的网卡名命名方式与 Debian 的不同,这将导致网络服务识别不到网卡配置,使得网络服务启动失败,这时通过 ip a
等命令查看先在网卡设备的名称,然后去修改网络配置的配置文件即可
- 通过
ip a
查询到现在网卡被命名成了eth0
- 然后到
/etc/network/interfaces
配置文件中将ens18
等网卡名修改成eth0
- 最后重启网络服务
systemctl restart networking
修改主机名(可选)
sudo hostnamectl set-hostname FalseKali
echo "127.0.0.1 FalseKali" >> /etc/hosts
最后重启服务器即可