安装docker
卸载旧版本docker
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
设置储存库
安装软件包(提供实用程序)并设置稳定储存库。yum-utilsyum-config-manager
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装Docker引擎
安装最新版本的Docker引擎和containerd,或转入下一步以安装特定版本:
sudo yum install docker-ce docker-ce-cli containerd.io
若要安装特定版本的Docker引擎centos 卸载webmin,请在储存库中列举可用版本,之后选择并安装:
yum list docker-ce --showduplicates | sort -r
b.按特定版本的完全限定包名称安装特定版本,该名称是包名()加上版本字符串(第2列),从第一个逗号()开始,直至第一个连字符,用连字符()分隔。诸如。docker-ce:-docker-ce-18.09.1
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
启动Docker。
sudo systemctl start docker
设置开机启动
sudo systemctl enable docker
通过运行映像验证Docker引擎是否已正确安装。hello-world
sudo docker run hello-world
卸载Docker引擎
卸载Docker引擎、CLI和容器包:
sudo yum remove docker-ce docker-ce-cli containerd.io
主机上的映像、容器、卷或自定义配置文件不会手动删掉。删掉所有映像、容器和卷:
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
yum配置阿里源(这儿配不配无所谓)
1.打开centos的yum文件夹
cd /etc/yum.repos.d/
2、用wget下载repo文件
wget http://mirrors.aliyun.com/repo/Centos-7.repo
3、备份系统原先的repo文件
mv CentOs-Base.repo CentOs-Base.repo.bak
4、替换系统原理的repo文件
mv Centos-7.repo CentOs-Base.repo
5、执行yum源更新命令
yum clean all
yum makecache
yum update
安装docker-conmpose
1、准备环境
curl -s https://bootstrap.pypa.io/get-pip.py | python3
报错的话什么是linux,找不到python3那就下载一下
yum install python3
之后重新执行。
2、安装docker-compose
有pip后即可直接使用pip安装docker-compose:
pip install docker-compose
安装完成后,执行docker-compose-v,有返回则说明安装成功。
下载Vulhub
1、安装完成docker和docker-compose后,拉取Vulhub到本地任意目录即可:
git clone https://github.com/vulhub/vulhub.git
git clone https://gitee.com/happyaunt/vulhub.git
任意执行一个就行,第一个可能不行,建议第二个
可能你也没有git,没事我也打算了,
yum install git -y
启动漏洞环境
docker-compose会手动查找当前目录下的配置文件(默认文件名为docker-compose.yml),并依据其内容编译镜像和启动容器。所以,要运行某个漏洞靶场,须要先步入该漏洞所在的目录。
在Vulhub中选择某个环境,步入对应目录。如Flask服务端模板注入漏洞centos 卸载webminlinux运维博客,我们步入flask/ssti目录:
cdflask/ssti
直接执行如下命令,进行漏洞靶场的编译和运行:
[root@db007 /]# cd vulhub
[root@db007 vulhub]# ls
activemq contributors.md ecshop git httpd joomla nexus phpunit ruby thinkphp
appweb contributors.zh-cn.md elasticsearch gitea imagemagick jupyter nginx postgres samba tomcat
aria2 couchdb electron gitlab jackson libssh node python scrapy uwsgi
base discuz fastjson gitlist java LICENSE openssh rails solr weblogic
bash django ffmpeg glassfish jboss log4j openssl README.md spark webmin
cgi dns flask goahead jenkins magento php README.zh-cn.md spring wordpress
coldfusion docker fpm gogs jira mini_httpd phpmailer redis struts2 zabbix
confluence drupal ghostscript hadoop jmeter mysql phpmyadmin rsync supervisor
[root@db007 vulhub]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@db007 vulhub]# cd acticemq
-bash: cd: acticemq: No such file or directory
[root@db007 vulhub]# cd activemq
[root@db007 activemq]# ls
CVE-2015-5254 CVE-2016-3088
通过dockerps可以看见测试环境已然启动
可选
docker-composebuild
docker-composeup-d
为何docker-composebuild是可选的?
docker-composeup-d运行后,会手动查找当前目录下的配置文件。假如配置文件中包含的环境均早已存在,则不会再度编译;假如配置文件中包含的环境不存在,则会手动进行编译。所以,虽然docker-composeup-d命令是包含了docker-composebuild的。
假如更新了配置文件,你可以手工执行docker-composebuild来重新编译靶场环境。