在docker容器中运行kali linux (windows版)

2016-10-26 13:45:30 26 1950
0x00 什么是Docker?
       Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

      如果你觉得有点懵,其实你可以认为docker就是一个轻量级的”虚拟机“,不过他并不是虚拟机,而是一个容器,类似于chroot,一个超级的chroot。当然,你也可以看看网上的介绍文章:https://www.zhihu.com/question/28300645
    http://blog.csdn.net/colorant/article/details/20608157/
说那么多,还不如自己搭建一个Kali Linux试试~

0x01 开始安装

本人的操作系统是windows 10  x64 ,虚拟化已经开启。



0x02 第一步,下载安装 Docker Toolbox
网上文章说windows 32位系统不支持,我没有测试过。
https://www.docker.com/products/docker-toolbox
安装步骤略过,安装完成后桌面会多了三个图标,打开下图的Docker Quickstart Terminal



可能要等待一段时间,完成后



0x03 pull kali官方的dcoker镜像到本地

$ docker pull kalilinux/kali-linux-docker ,运行后会从docker hub下载,国内网络可能会很慢,也可以使用下面我push到网易蜂巢的镜像

$ docker pull hub.c.163.com/vamvam/kalilinux:latest  





下载完成后输入  $ docker images 你可以看到刚才pull下来的镜像



0x04 启动镜像
$ docker run -i -t 8e1fd3b2a43d /bin/bash
关于docker 的参数,网上已经有了很详细的讲解,这里就不累赘了。
其中, 8e1fd3b2a43d 就是上图的IMAGE ID,替换为你需要启动的的IMAGE ID即可


成功运行 Kali linux,如下图


该镜像为空白镜像,换好了国内的更新源。需要什么直接apt install 即可。
比如你需要安装 metasploit,可以使用下面的命令
root@ae16782404e6:/# apt-get install metasploit-framework


如果你不能确定你需要安装的软件名,可以使用apt search 来搜索,比如 :

apt search metasploit


0x05 一个问题

感受到成功的喜悦后,你可能会在容器里疯狂apt install,但是你会发现幸苦安装的工具退出容器再启动容器后所有安装的工具都没有了?如果是,请看下面....
在你的容器里增加内容后,如果需要保存,请参考以下的步骤。
新打开一个 Docker Quickstart Terminal,输入

$ docker ps     
你可看到后台运行的容器,记下CONTAINER ID,下图的是ae16782404e6


$ docker commit 【CONTAINER ID】 wobushi.cn/kalilinux       把【CONTAINER ID】替换为你的CONTAINER ID即可,如下图

完成后,再次输入 docker images ,你会发现多了一个叫 wobushi.cn/kalilinux 的容器,这样才能把你刚操作的更新保存。

好了,希望教程对你有帮助,关于后台运行和端口映射的问题我们会在下一个帖子讨论。
TCV 1

关于作者

v0new18篇文章281篇回复

双击查看ส้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้้

评论26次

要评论?请先  登录  或  注册
  • 26楼
    2017-1-22 15:40

    使用命令介绍的不够全呢。。。

  • 25楼
    2017-1-17 15:56

    为什么现在大家都在玩docker,自己都没时间研究,过年放假研究一下

  • 24楼
    2017-1-16 15:40

    怎么会每次都疯狂的 apt-install。docker ps -a 然后docker start [id] 开启,docker exec -it [id] /bin/bash 不就进去了么?

  • 23楼
    2017-1-16 15:33

    ducker和win 10的bash有啥不一样?话说win 10的bash感觉性能完全和真的转上linux性能差别很大。无论是文件拷贝的速度还是网络代理的效率都大打折扣。不知道docker怎么样

  • 22楼
    2017-1-16 15:22

    确实比VM好用,当然如果说你自己还是习惯有界面的,那当然还是用VM的好啦。

  • 21楼
    2017-1-16 14:55

    docker在软件快速交付中有非常大的作用。当然了,大家可以共享自己搭建的docker。

  • 20楼
    2017-1-13 11:55

    花了一点时间学了简单的docker搭建和用别人的镜像,确实比VM好用,当然如果说你自己还是习惯有界面的,那当然还是用VM的好啦。

  • 19楼
    2017-1-9 23:28

    我正好相反是在docker里面装了win,不过这玩意确实方便,很多漏洞镜像直接就能跑,太方便了

  • 18楼
    2016-11-2 10:45

    PC安装了virtualbox+vmware,又安装docker,结果发现vmware下的虚拟机就变得。。。一卡一卡的。。好忧伤 卸载了docker之后就奇迹的不卡了。。。

  • 17楼
    2016-10-27 23:05

    这个真学习了,这下明白了,赞

  • 16楼
    2016-10-27 15:23
    fresh

    每次更改后 都需要保存吗?

    1

    是的..

  • 15楼
    2016-10-27 13:38

    这个倒是方便不用单独再开个vm给kali了

  • 14楼
    2016-10-27 10:35

    每次更改后 都需要保存吗?

  • 13楼
    2016-10-27 09:29

    现在都在玩docker了。。看来未来走openstack也有可能了

  • 12楼
    2016-10-27 07:00

    metasploit在国内的升级一直都是挺麻烦的,这个docker镜像到是不错~

  • 11楼
    2016-10-27 00:24

    希望楼主今后也多发这样的新技术文章~

  • 10楼
    2016-10-26 23:55

    忘记保存岂不是得哭晕在厕所

  • 9楼
    2016-10-26 21:26

    docker 新技术 欢迎这样的文章。

  • 8楼
    2016-10-26 20:55

    跟着楼主的文章安装看看。

  • 7楼
    2016-10-26 20:19

    之前折腾了好久,没折腾成功,就放弃了