zp7412 发表于 2019-2-21 10:15:30

《11招玩转网络安全》之第一招:Docker For Docker

  玩转×××那些工具,缺少了虚拟机怎么行,除了用虚拟机虚拟整个系统,Docker也不能缺少,读者只需要知道,Docker只虚拟Linux系统中的某个程序就可以了。本节就来介绍Linux下安装设置Docker。
  很幸运,Docker已经加入到了Debian的官方源中了。可以使用apt-get安装Docker。首先,使用163的镜像替代默认的官方镜像(基于Docker使用加速器的同样理由),163镜像源的配置文件163.list如下:
  deb http://mirrors.163.com/debian/ jessie mainnon-free contrib
deb http://mirrors.163.com/debian/ jessie-updatesmain non-free contrib
deb http://mirrors.163.com/debian/ jessie-backportsmain non-free contrib
deb-src http://mirrors.163.com/debian/ jessie mainnon-free contrib
deb-src http://mirrors.163.com/debian/jessie-updates main non-free contrib
deb-src http://mirrors.163.com/debian/jessie-backports main non-free contrib
deb http://mirrors.163.com/debian-security/jessie/updates main non-free contrib
deb-src http://mirrors.163.com/debian-security/jessie/updates main non-free contrib
1、首先将163.list拷贝到/etc/apt/sources.list.d/目录下,然后将系统默认的更新源注释掉。执行命令:

su
cp 163.list /etc/apt/sources.list.d/
sed -i ‘s/^/#/g’ /etc/apt/sources.list
  2、测试一下执行结果,如图1-56所示。
http://i2.运维网.com/images/blog/201807/03/2429baf89f1e21ed82955476d798c66a.gif
l   图1-56修改debian软件源
  3、其中jessie-backports main就是Docker的位置。修改软件源后,更新软件园,安装Docker,执行命令:

apt-get update
apt-get install docker-io
  执行结果如图1-57所示。
http://i2.运维网.com/images/blog/201807/03/8fd6581d3de6a50da6865f2220f3cee8.gif
l   图1-57安装Docker For Linux
  4、Docker For Linux安装完毕,下面开始给Docker配置加速器,还是使用刚才在Windows下获取的Daocloud加速器。执行命令:
echo "DOCKER_OPTS=\"$DOCKER_OPTS --registry-mirror=http://xxx.m.daocloud.io\"">> /etc/default/docker
Docker For Linux配置完毕,可以开始使用了。

Docker使用
  在终端(Windows的终端是cmd.exe和ConEmu,Linux的终端是Terminal)中执行docker –help,可以查看Docker的所有命令,执行结果如图1-58所示。
http://i2.运维网.com/images/blog/201807/03/2131a07e91c8834f1ac7bef74bcbf0b5.jpg
l   图1-58docker help
  这里只说明最常用的几个命令,如下所示。


[*]docker search从镜像源搜索软件
[*]docker pull   从镜像源拉取软件
[*]docker run运行镜像为容器
[*]docker ps   显示容器列表
[*]docker images显示镜像列表
[*]docker start启动容器
[*]docker stop停止运行中的容器
[*]docker rm删除容器
[*]docker rmi删除镜像
基本上熟悉这几个命令就可以使用Docker了。下面来以Kali来测试一下。虽然在选择Linux系统时选择了Debian Linux,但Kali在某些方面的确要比Debian方便很多。使用VMwareWorkstation创建Kali虚拟机是一个办法,使用Docker创建Kali容器同样也挺好用。首先搜索可用的Kali镜像。执行命令:
docker search kali
执行结果如图1-59所示。
http://i2.运维网.com/images/blog/201807/03/3ed820db4fcfc0d7fbe475bd122c51b9.jpg
l   图1-59搜索docker 镜像
  可用的镜像很多,选择自带metasploit的镜像linuxkonsult/kali-metasploit。将docker镜像pull到本地,执行命令:
docker pull linuxkonsult/kali-metasploit
执行结果如图1-60所示。
http://i2.运维网.com/images/blog/201807/03/80291b4a11d5fcfe6a78b2ab0024fa19.jpg
l   图1-60docker pull
  这个镜像比较大,下载可能需要点时间。如果配置好了加速器,速度还勉强可以接受。运行命令docker images、docker ps和docker ps -a分别查看当前镜像、当前运行容器和当前所有容器,如图1-61所示。
http://i2.运维网.com/images/blog/201807/03/500df2c540e37395f9927f4efd896b11.jpg
l   图1-61镜像和容器列表
  当前只有镜像没有容器。可以用dockerrun 命令,暂时的使用镜像里的程序,如图1-62所示。
http://i2.运维网.com/images/blog/201807/03/996ff169707f312a9d21a9ebea53e2a1.jpg
l   图1-62docker run
  这里的-it选项意思是打开交互式环境接口,--rm选项意思是退出后就删除这个容器。这个命令创建了一个临时容器(没指定容器名),并运行了容器中的python程序。以同样的方法,也可以打开kali容器中的msfconsole程序。
  用docker run 以后台的方式运行kali linux。这种方式就有点类似与VMware虚拟机了,只是没有图形界面,如图1-63所示。
http://i2.运维网.com/images/blog/201807/03/c9574adc82ff75d15ce1f150791ff92c.jpg
l   图1-63后台运行容器
这里的-d参数指定后台运行,--name指定了容器的名字,-p参数相当于端口映射,意思是把容器上的22端口映射到主机的22端口上(虽然容器上端口不一定打开了)。查看一下本地的22端口,如图1-64所示。
http://i2.运维网.com/images/blog/201807/03/c57e834b7f3f9c17fdc1fe00be4b0c1f.jpg
l   图1-64docker端口映射
  当容器使用完毕后,可以用dockerstop关闭容器。下次使用时则用dockerstart启动容器,如图1-65所示。
http://i2.运维网.com/images/blog/201807/03/505a3825b2852b0c37a0fbecdc739b79.jpg
l   图1-65打开、关闭容器
  如果觉得这个容器、镜像不符合要求,可以使用docker rm和docker rmi命令删除容器和镜像。删除容器时必须要先关闭容器,删除镜像时要先删除根据镜像生成的容器,如图1-66所示。
http://i2.运维网.com/images/blog/201807/03/560d022a17871b4c5ce49fc10cbfabc2.jpg
l   图1-66删除容器、镜像
  Docker使用简单方便,占用资源比VMware要小很多。除了不能创建Windows容器外,完全可以作为VMware的替代品。如果实在不习惯Docker命令模式的,也有Docker GUI程序可供使用。
  有兴趣的欢迎一起读这本书《11招玩转网络安全——用Python,更安全》
http://i2.运维网.com/images/blog/201807/03/8432e6a5889f06d936210d4145881c8d.jpg



页: [1]
查看完整版本: 《11招玩转网络安全》之第一招:Docker For Docker