當 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