当 Kali 遇见 Docker

  • 2019 年 12 月 17 日
  • 筆記

引言

最近在学习 《Python 黑帽子:黑客与渗透测试编程之道》一书,分别在 VMvare 和 U 盘安装了 Kali-Linux 操作系统,但是 VMvare 启动 kali 虚拟机后占用了笔记本太多资源而变得特别卡,从 U盘启动的 kali 系统性能又不足,此外我们不建议在物理机上直接安装 Kali-Linux,它只有 root 用户,鉴于其用途,直接安装在物理机上并不安全。综上,使用 Docker 似乎成为了打开 kali 虚拟机的最最最正确姿势,于是有了这篇文章,如有错误还请指正。

Kali Linux 是一款开源的基于 Debian 的渗透测试专用操作系统,系统中包含一系列用于渗透测试的神器。

Docker 是目前最火热的开源应用容器,发布于 2014 年 6 月。它能让开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。Docker 可以被看作是互联网上的货运纸箱——一款能让互联网软件开发商将作品整洁打包,并快速递送至一台又一台电脑的工具。

在 Docker 中安装 Kali-Linux 虚拟机的优点在于:启动速度比虚拟机快 , 可以秒级启动,而且可以通过 Dockerfile 配置文件来灵活的自动创建和部署镜像 & 容器 , 提高工作效率;Docker 对资源占用小,除了运行 Kali-Linux 外 , 基本不消耗其他系统资源 , 保证应用性能同时 ,尽量减小系统开销。

Kali系统开发者Mati Aharoni认为:将 Docker 与 Kali 结合的美妙之处在于,Kali 被安置在一个非常棒的、干净的容器中。

自从 Docker 版 Kali Linux 发布后,网络安全爱好者与渗透测试工程师们可以尽情驾驭 Kali 于 Windows, Mac或是Linux 中了。

Ubuntu18.04 配置 Docker 环境

查看系统版本

cat /etc/issue  Ubuntu 18.04.3 LTS n l

更新系统

sudo apt-get update && sudo apt-get upgrade

安装 Docker

#安装 docker 软件包  sudo apt-get install docker.io  #查看版本号  sudo docker -v  #启动服务  sudo systemctl start docker  #允许开机自启动  sudo systemctl enable docker  #查看运行状态  sudo systemctl status docker

添加 Docker 镜像源

sudo vim /etc/docker/daemon.json

{ “registry-mirrors”: [“https://docker.mirrors.ustc.edu.cn/”] }

拉取 Kali-Linux 镜像

sudo docker pull kalilinux/kali-linux-docker

查看镜像

sudo docker images

创建容器

sudo docker run -t -d -p 60000:22  -p 60001:5901 -p 60002:5902 a1765e8e381e  /bin/sh -c "while true; do echo hello world; sleep 1; done"

-t 让 docker 分配一个伪终端并绑定到容器的标准输入上 ,-p 指定映射端口,如宿主机60001端口映射到虚拟机的 5901 端口,-d 保持后台运行, -c 执行一些命令

查看容器

sudo docker ps

进入容器

sudo docker exec -it 1275cabd2cdc /bin/bash

Kali Linux

系统环境

# 修改 root 用户密码  passwd root

修改镜像源

# 阿里云镜像源  vi /etc/apt/sources.list

deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib

SSH服务

# 更新系统  apt-get update && apt-get upgrade  # 安装所需软件  apt-get install vim net-tools openssh-server  # 修改 vim 配置文件,允许 root 用户远程登录  vim /etc/ssh/sshd_config
#启动 ssh 服务  service ssh start  #允许开机自启动  systemctl enable ssh

远程桌面

# 安装 xfce4 桌面环境  apt-get install kali-defaults kali-root-login desktop-base xfce4 xfce4-places-plugin xfce4-goodies  # 安装 vnc4server  apt-get install vnc4server  #启动 vncserver  vncserver :1 -localhost no -geometry 1928x1080

SSH测试

VNC测试

友情提示

kali官方给出了Docker版本,基本上是个空系统,安装 kali 所有的工具可以运行 apt-get install kali-linux-all ,大小约为 10G。

配置完 Kali 后,建议将 container commit 一下,便于以后配置错误导致 Kali 系统崩溃时,可以用提交的镜像快速重建容器。

END