docker下运行kalilinux并配置ssh访问

Kali Linux是一款开源的基于Debian的渗透测试专用操作系统,系统中包含一系列用于渗透测试的神器。
Docker是目前最火热的开源应用容器,发布于2014年6月。它能让开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

Docker+Kali

Kali系统开发者Mati Aharoni认为:将Docker与Kali结合的美妙之处在于,Kali被安置在一个非常棒的、干净的容器中。
网络安全爱好者与渗透测试工程师们可以尽情驾驭Kali于Windows, Mac或是Linux了。

下面是具体操作,docker环境就不多说了

拉取kalilinux镜像

shana@Ubuntu1604:~$ docker pull kalilinux/kali-linux-docker

docker下运行kalilinux并配置ssh访问_第1张图片

查看镜像ID

shana@Ubuntu1604:~$ docker images

docker下运行kalilinux并配置ssh访问_第2张图片

创建容器

shana@Ubuntu1604:~$ docker run -t -d -p 2222:22 7b9ab7293e68 ## -p 2222:22 将容器22端口映射到宿主机2222端口

k3

进入容器并进行相关配置

shana@Ubuntu1604:~$ docker exec -it b7e6eb0da7b3 /bin/bash
修改root密码
root@b7e6eb0da7b3:/# passwd root

k4

安装openssh-server服务
root@b7e6eb0da7b3:/# apt-get install openssh-server 

安装成功
docker下运行kalilinux并配置ssh访问_第3张图片

如下报错找不到安装包则需更换源

docker下运行kalilinux并配置ssh访问_第4张图片

root@b7e6eb0da7b3:/# cp /etc/apt/sources.list /etc/apt/sources.list.bak 
root@b7e6eb0da7b3:/# vi /etc/apt/sources.list 

替换为以下源并保存

deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb http://mirrors.ustc.edu.cn/kali kali-rolling main contrib non-free
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main contrib non-free
deb http://mirrors.ustc.edu.cn/kali-security kali-current/updates main contrib non-free
deb-src http://mirrors.ustc.edu.cn/kali-security kali-current/updates main contrib non-free

更新包列表,重新安装openssh-server即可

root@b7e6eb0da7b3:/# apt-get update  
···

修改ssh配置文件

root@b7e6eb0da7b3:/# vi /etc/ssh/sshd_config

在”#PermitRootLogin prohibit-password”下面一行添加”
PermitRootLogin yes”
docker下运行kalilinux并配置ssh访问_第5张图片

重启ssh服务

root@b7e6eb0da7b3:/# service ssh start

k8

安装net-tools,查看容器IP端口是否正常

root@b7e6eb0da7b3:/# apt-get install net-tools
root@b7e6eb0da7b3:/# netstat -ant
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 172.17.0.5:59026        202.141.160.110:80      TIME_WAIT  
tcp6       0      0 :::22                   :::*                    LISTEN     

可以看到容器IP为172.17.0.5,22端口开放,返回宿主机

测试ssh连接

通过容器IP远程

shana@Ubuntu1604:~$ ssh root@172.17.0.5 

docker下运行kalilinux并配置ssh访问_第6张图片
通过宿主机IP远程(端口为映射的2222,宿主机IP自查)

root@b7e6eb0da7b3:~# ssh -p 2222 [email protected]

docker下运行kalilinux并配置ssh访问_第7张图片

可以看到均成功登入,部署完成

友情提示:
kali官方给出了Docker版本,基本上是个空系统,在容器中安装想要的工具直接apt-get即可。 比如安装 tree直接运行apt-get install sqlmap,安装kali所有的工具则运行 apt-get install kali-linux-all 直接一套带走,10G左右。
最好在配置完KaliLinux后,将container commit一下,不然每次都需要重启服务。嗯,剩下的时间大家自行摸索吧~

你可能感兴趣的:(容器技术,安全渗透)